![](/stc/img/evkova.png)
Основы программирования на языке QBasic (История появления языка BASIC)
Содержание:
Введение
Развитие и процесс совершенствования электронно-вычислительных машин влечет за собой и появление непосредственно средств программирования. Для машин первого поколения – средства программирования составляли при помощи машинных кодов. Это являлось достаточно непростым процессом, в силу того, что перед программистом ставилась цель самому распределить имеющуюся память под программу, данные исходные и результаты. Понять, расставить по своим местам, либо изменить такую программу на практике оказывалось невозможным. Еще во времена 50х годов, когда наступил переход к машинам уже второго поколения, появилась потребность в том, чтобы создать более большие и сложные программы. Составление их в машинных кодах сопровождалось резким спадом эффективности использования самих электронно-вычислительных машин. Для этого времени характерно появление первых алгоритмических языков программирования, отличавшиеся простой наглядной формой реализации конкретного алгоритма, применением простой, уже привычной математической символики, ограниченным комплексом ключевых слов. Основным достоинством тех языков программирования была универсальность.
Работа с программой, выполненной на алгоритмическом языке, подвергалась упрощению благодаря достаточно простого написания, и наличия такой возможности как модифицирование. Модернизация вычислительной техники, точнее, расширения объема памяти и улучшения быстродействия ЭВМ дало возможность программированию на алгоритмических языках стать более распространенным и получить какие-либо перспективы. В сегодняшнем мире существует большое количество алгоритмических языков, обладающие и общими, и своими отличительными характеристиками и особенностями.
Прежде всего - это Фортран, Бейсик, Паскаль и др. На примере данных языков можно наглядно убедиться в тех характерных особенностям, которыми обладает программирование на алгоритмических языках в общем плане.
Бейсик (BASIC) – сокращение английских слов Beginners All-purpouse Symbolic Instraction Code, что в переводе означает “многоцелевой язык символических инструкций для начинающих”. В роли его разработчика выступили профессоры Дартмутского колледжа (США) Т. Куртц и Дж. Кемени в 1965 году с целью обучить студентов, ранее незнакомых с вычислительной техникой. Этот язык, схожий с языком Фортран, но он по сравнению с последним выигрывает в простоте, тем самым приобрел достаточно быстро свою популярность. Пик роста его популярности пришелся на время появления ПК, где он и стал одним из основных языков программирования. Существует множество версий языка Бейсик и все они имеют свои отличительные особенности. В каждой из них можно выделить общее подмножество, в котором отражены характерные (стандартные) грамматика, синтаксис и семантика языка. Самой популярной версией стал Qbasic, благодаря своему удобному интерфейсу и возможности предоставить пользователю ряда сервисных возможностей, которые присущи современным системам программирования.
Цель данной работы – ознакомиться с основами программирования на языке Qbasic.
С учетом поставленной цели будут решены следующие задачи:
- рассмотрено общее понятие программирования на языке Qbasic;
- проанализированы основные программы языка.
Курсовая работа состоит из введения, 2 глав, заключения и библиографии.
Глава 1 Общее понятие программирования на языке Qbasic
1.1 История появления языка BASIC
Бейсик (BASIC — сокращение от англ. Beginner's All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих; англ. basic — основной, базовый) — семейство высокоуровневых языков программирования.
В роли его разработчика выступили профессоры Дартмутского колледжа (США) Т. Куртц и Дж. Кемени в 1965 году с целью обучить студентов, ранее незнакомых с вычислительной техникой[1]. До середины 60-х компьютеры были слишком дорогими машинами, использовавшимися только для особых задач, и выполнявшими только одну задачу за раз (т. н. пакетная обработка).
Языки программирования того времени, равно как и сами компьютеры, на которых они применялись, были разработаны только для решения специфичных задач, таких как научные вычисления. В связи с тем, что машины были недешевыми с точки зрения затрат и только лишь одна задача выполнялась за раз, поэтому и машинное время было тоже недешевым, в связи с чем скорость выполнения программы была первоочередным достоинством.
Но, тем не менее, уже в 60е годы стоимость на ЭВМ стала молниеносно снижаться, дошло даже до того, что даже у маленьких предприятий и компаний появилась возможность их приобретать. Скорость и работоспособность ПК также не стояла на месте, а увеличивалась, и все привело к тому, что компьютеры зачастую простаивали без каких-либо задач. Чтобы подобного не происходило, стали вводить системы с разделением времени (time-sharing). В таких системах процессорное время «нарезалось», и все пользователи поочерёдно получали короткие отрезки этого времени. Машины были достаточно быстрыми для того, чтобы в результате каждый пользователь за терминалом чувствовал себя так, будто работает с системой в одиночку. Машина же, в свою очередь, простаивала меньше, поскольку выполняла не одну, а сразу много задач. Разделение времени радикально снижало стоимость машинного времени, поскольку одна машина могла совместно использоваться сотнями пользователей.
В этих условиях — когда мощность стала дёшева и доступна — создатели языков программирования все больше стали задумываться об удобстве написания программ, а не только скорости их выполнения. «Мелкие» (атомарные) операции, выполняемые непосредственно устройствами машины, объединили в более «крупные», высокоуровневые операции и целые конструкции, с которыми человеку куда проще и удобнее работать. Появились языки высокого уровня.
Бейсик был придуман в 1963 году преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Куртцом, и под их руководством был реализован командой студентов колледжа. Со временем, когда стали появляться другие диалекты, этот «изначальный» диалект стали называть Dartmouth BASIC.
Бейсик был спроектирован так, чтобы студенты могли писать программы, используя терминалы с разделением времени. Он создавался как решение для проблем, связанных со сложностью более старых языков. Он предназначался для более «простых» пользователей, не столько заинтересованных в скорости программ, сколько просто в возможности использовать компьютер для решения своих задач.
При проектировании языка использовались следующие восемь принципов:
- новый язык должен быть простым в использовании для начинающих
- быть языком программирования общего назначения
- предоставлять возможность расширения функциональности, доступную опытным программистам
- быть интерактивным
- предоставлять ясные сообщения об ошибках
- быстро работать на небольших программах
- не требовать понимания работы аппаратного обеспечения
- защищать пользователя от операционной системы
Язык был основан частично на Фортран II и частично на Алгол-60, с добавлениями, делающими его удобным для работы в режиме разделения времени и, позднее, обработки текста и матричной арифметики. Первоначально Бейсик был реализован на мейнфрейме GE-265 с поддержкой множества терминалов. Вопреки распространённому убеждению, в момент своего появления это был компилируемый язык.
Несмотря на то что язык уже использовался на нескольких миникомпьютерах, его настоящее распространение началось с его появления на микрокомпьютере Altair 8800. Многие языки программирования были слишком большими чтобы поместиться в небольшую память, которую пользователи таких машин могли себе позволить. Для машин с таким медленным носителем как бумажная лента (позднее — аудиокассета) и без подходящего текстового редактора такой небольшой язык как Бейсик был отличной находкой.
В 1975 году Майкрософт (тогда это были лишь двое — Билл Гейтс и Пол Аллен, при участии Монте Давидова) выпустила Altair BASIC[2]. Затем его версии появились на другой платформе под лицензией и скоро в использовании были уже миллионы копий и вариантов; один из вариантов, Applesoft BASIC, стал стандартным языком на Apple II. Для операционной системы CP/M был создан диалект BASIC-80, надолго определивший развитие языка.
В 1979 Майкрософт обсуждала с несколькими поставщиками компьютеров (включая IBM) лицензирование интерпретатора Бейсик на их машинах. Одна из версий (ROM BASIC) была включена в ПЗУ IBM PC — компьютер мог автоматически загружаться в Бейсик. Так как IBM не придавала тогда большого значения персональным компьютерам (основным полем её деятельности были мейнфреймы), то, вопреки своим принципам, она разрешила Microsoft продавать интерпретатор отдельно. Это сделало последнюю пионером в выпуске ПО нового поколения — не привязанного к конкретной аппаратуре и поставляемого отдельно от компьютера.
В период зрелости было создано несколько новых версий Бейсика. Майкрософт продавала несколько версий Бейсик для MS-DOS/PC-DOS, включая BASICA, GWBASIC (модификация BASICA, не требующая «прошивки» от IBM) и Quick BASIC. Borland, известная своим Turbo Pascal, в 1985 выпустила Turbo BASIC 1.0 (его наследники впоследствии продавались другой компанией под именем PowerBASIC). На домашних компьютерах появились различные версии Бейсика, обычно включающие расширения для работы с графикой, звуком, команды ОС, а также средства структурного программирования. Некоторые другие языки использовали хорошо известный синтаксис Бейсика в качестве основы, на которой строилась совершенно иная система (см. например, GRASS).
Однако, начиная с конца 80-х, новые компьютеры стали намного более сложными и предоставляли возможности (такие как графический интерфейс пользователя), которые делали Бейсик уже не столь удобным для программирования. Бейсик начал сдавать свои позиции, несмотря на то что огромное количество его версий ещё использовалось и продавалось.
Вторую жизнь Бейсик получил с появлением Visual Basic от Microsoft. Хотя и трудно согласиться, что этот язык — действительно Бейсик (несмотря на множество привычных ключевых слов), спустя некоторое время он стал одним из наиболее часто используемых языков на платформе Microsoft Windows. Майкрософт создала вариант под названием WordBasic и использовала его в MS Word до появления Word 97. Вариант Visual Basic for Applications (VBA) был встроен в Excel 5.0 в 1993 году, затем в Access 95 в 1995-ом, а после и во все остальные инструменты, входящие в пакет Office — в 1997-ом. Internet Explorer 3.0 и выше, а также Microsoft Outlook включали интерпретатор языка VBScript. В полный вариант пакета OpenOffice.org также включён интерпретатор Бейсика.
Бейсик используется в некоторых моделях программируемых калькуляторов. Например, он встроен в отечественный калькулятор «Электроника МК-85».
1.2 Основы программирования на QBASIC
Объектом обработки QBASIC является текстовый файл "канонического" формата, который содержит исходный текст программы на языке BASIC. После загрузки QBASIC. EXE на экране появляется окно текстового редактора системы, показанное на рис. 1.
Рис. 1 - Окно текстового редактора системы
В этом окне вы проводите все операции с программой — набираете и редактируете текст, сохраняете текст в файле, открываете для работы готовый файл, отлаживаете и выполняете программу и т. д.
Файлу можно присвоить произвольное имя с произвольным расширением, но рекомендуется расширение .BAS,
С помощью пунктов главного меню File, Edit, View, Search вы работаете с исходным текстом программы, с помощью пункта Run — выполняете, а с помощью пункта Debug — отлаживаете программу.
Текстовый редактор QBASIC работает точно так же, как и простой редактор MS-DOS Editor, (основной стандарт редактирования, операции с фрагментами текста). Поэтому мы не повторяем изложение техники редактирования, — добавим только, что для удаления строки, под которой находится курсор, можно нажать клавиши {Ctrl+Y}.
Примечание. Некоторые пользователи предпочитают пользоваться более удобными (с их точки зрения) редакторами. Никто вам не мешает подготовить исходный текст программы в своем любимом редакторе, а затем работать с ним и среде QBASIC. Служебные слова, если это удобно, можно набирать строчными буквами. — QBASIC сам исправит их на прописные.
Глава 2 Основные программы языка
2.1 Работа с переменными
Переменной является область, находящаяся в памяти ПК, где хранится некоторое значение. У каждой переменной есть имя, значение и тип.
Имя переменной принято обозначать буквой; после нее также может стоять цифра, причем порядок такой что первой должна находиться именно буква:: x, y, z, A1, B2. Назначение имени переменной – служить для обозначения некоторой величины в конкретной определенной программе программе, которая при выполнении программы может иметь какое-либо значение, но может быть и не определена[3]. Пример задания часто употребляемой константы: pi=3.14159.
Переменные бывают - целые, вещественные, логические, символьные, строковые и др. Когда в переменной хранят число, это означает что она - числовая переменная, когда в переменной хранится слово или фраза – значит это строковая (либо символьная) переменная. В QBasic строковую переменную принято обозначать a$, b$ (т.е в окончании имени должен стоять знак доллара - «$»). Пока содержимое в переменной специально не изменят, оно будет хранится в данной переменной.
Присваиванием называют операцию, при которых происходит передача новых данных в конкретную переменную. Она имеет следующее обозначение в QBasic - при помощи знака "=", например, x=10.
В Словаре qbasic присутствует примерно двести ключевых слов, и каждое из них обозначает выполнение конкретного определенного действия. Многие ключевые слова наряду с второстепенными параметрами основывают операторы. Именно из них состоит текст программы. Так например, Print и есть пример такого слова. Когда выполняется данный оператор, на экран выводится текст, заключенный в двойные кавычки).
Но у этого оператора есть еще две особенности. Вот первая из них: Этот оператор может выполнять арифметические действия. Рассмотрим на примере:
Print 2+3
После выполнения этой программы на экране высветиться 5 , а не 2+3, так что можно использовать qbasic вместо калькулятора.
Вторая особенность заключается в том, что если вы поставите знак вопроса(?) И после этого нажмете на ENTER то он вопросительный знак превратиться в Print. Попробуйте поработать с оператором Print. или внимание на то, что Qbasic не очищает экран автоматически при запуске новой программы, и после выполнения разных программ или многократного выполнения одной и той же на экране вывода результат помещается в начале программы- это хорошая привычка и прекрасный стиль программирования(так пишут во всех учебниках , а мне честно сказать как то по барабану где его поставить ) Но ничего не мешает в случае необходимости использовать его в произвольном месте программы.Ну это все касалось того,с чего начинается программа. А теперь перейдем к тому ка закончить программу. Оператор END- еще один пример ключевого слова- прекращает выполнение программы. В случае его отсутствия Qbasic считает, что программа заканчивается после последней строки(вспомните программы из одной строки например какие я писал об операторе PRINT ),но END весьма полезен при необходимости прервать выполнение программы. Оператор END может и не быть последним оператором программы. Текст может продолжаться и после данной команды, но выполнение ее будет прервано сразу при встрече END .Давайте посмотрим еще один пример:
cls
Print "Это моя программа"
Print "я создал ее сам"
End
Нажатием клавиш Shift+F5 мы запускаем программу на выполнение. И тогда на экране мы увидим:
Это моя программа
Я создал ее сам
Теперь нажмем любую клавишу чтбы вернуться в режим редактирования текста. И изменим программу:
Cls
Print "Это моя программа"
End
Print "Я создал ее сам"
End
При выполнение нового варианта программы результат будет иным. Вы можете запускать программу любое количество раз- но второй оператор PRINT все равно работать не будет. Оператор END прерывает выполнение программы и у нас будет выводиться только:
Это моя программа
Qbasic имеет три оператора, которые прерывают выполнение программы--END,Stop и System. Когда Qbasic встречает команды End и System, он закрывает вусе файлы и прекращает выполнение программы. Команда Stop отличается тем, что оставляет текущие файлы открытыми, временно приостанавливает выполнение и возвращает на экран текст программы. При следующем запуске выполнение программы начнется с оператора, следующего за оператором Stop.Но лучше всего использовать оператор End .
2.2 Ввод данных в программу. Оператор Input
Какими же способами можно ввести данные в программу? Во-первых , эта проблема решается с помощью оператора присваивания. Вот пример программы с оператором присваивания:
Rem программа суммирования двух чисел
Cls
Number1=3
Number2=7
summa=number1+number2
Print "number1=";number1
Print "number2=";number2
Print"summa=";summa
end
После запуска этой программы мы увидим на экране это:
Number1=3
number2=7
Summa=10
Сразу можно понять то, чтобы вычислить сууму другой пары чисел, мы должны будем вернуться в окно редактора и изменить программу.Решение возможное, но не самое лучшее. Как раз для этого случая в Qbasic вы можете присвоить переменной значение непосредственно с клавиатуры во время выполнения программы. Простейшая форма оператора, дающего вам возможность это сделать:
INPUT number,
где number-имя переменной, для которой требуется ввод значения
Команда INPUT NUMBER является уже достаточой командой, при встрече с которой программы выполняет следующие действия:1)После запуска программы на экране появиться знак вопроса.2) Программа приостанавливает работу и ждет, когда вы наберете какие-либо значение на клавиатуре. Нажатие клавиши ввода (то бишь ENTER)сообщает программе, что ввод окончен.3) Введенное значение присваивается перем и когда мы запускали программу у нас просто высвечивался значок вопроса(чтобы мы ввели переменную). А если мы напишем: Input "высота"; hТо он бы нам написал после запуска не просто вопросительный знак , а:высота?Ну что вы видите как полезно это свойство оператора Input. Надо только запомнить, что описание пишется в двойных кавычках и отделяется от переменной точкой запятой(;)Ну посмотрите как написал это я раньше. Кстати надо еще отметить, что оператор Print обладает таким же свойством, как и Input. Зачем спросите вы а я отвечу: Для того же зачем и у Input(Вот например у вас ответов десять и после выполнения программы он вам выведет десять чисел и фиг знает, где какое число. Надо помнить что тоже надо отделять точкой с запятой).Вот пример:Print "Площадь треугольника равна=";s.
2.3 Управляющие конструкции QBasic
1. Оператор безусловного перехода GOTO N, где N-метка. В качестве N можно взять любое число, не обязательно совпадающее с номером строки, так как в QBasic 4.5 строки можно не нумеровать. Но двух одинаковых меток в одной программе не должно быть. Исполнение программы будет продолжено с той её части, которая начинается с указанной метки.
Пример:
.......
GOTO 10
.......
10 PRINT "Текст"
.......
2. Условный оператор IF...THEN...ELSE (Если...Тогда...Иначе):
IF <условие> THEN <список операторов> ELSE <список операторов>
Если заданное условие истинно, выполняется список операторов, стоящий после THEN, в противном случае выполняется список операторов, стоящий после ELSE.
Слово ELSE может и отсутствовать. Тогда происходит переход к строке, следующей за оператором IF...THEN.
Условия представляют собой логические соотношения: равенства или неравенства = равно, <> неравно, > больше, < меньше, >= больше или равно, <= меньше или равно.
При использовании сложных условий (объединении двух и более условий) применяют слова AND (И) и OR (ИЛИ): Условие1 AND (или OR) Условие2...
Условный оператор позволяет реализовать алгоритм с ветвлением.
Пример 1:
CLS
INPUT "Введите год основания Москвы: M="; M
IF M = 1147 THEN PRINT "Выправы!" ELSE PRINT "Вы ошиблись!"
Пример 2:
CLS
PRINT "Вычислите y=1/(x-2) для всех x"
INPUT "Введите x=", x
IF x = 2 THEN PRINT "При x=2 функция не определена!": END
y = 1 / (x - 2)
PRINT "y="; y
Применяется также частный случай условного оператора - оператор условного перехода: IF <условие> GOTO N ELSE <список операторов> Число N - метка. Если условие выполняется, то происходит переход по метке N, а иначе выполняется список операторов, стоящих после ELSE. Слово ELSE может и отсутствовать. Тогда происходит переход к строке, следующей за оператором IF...GOTO.
Пример 3:
CLS
INPUT "Если хочешь каникулы, вводи 1. Если нет, любое число. n=", n
IF n = 1 THEN GOTO 10 ELSE GOTO 20
10 PRINT "Хочу каникулы!": END
20 PRINT "Хочу учиться!"
3. Оператор цикла FOR...TO...NEXT... позволяет реализовать циклический алгоритм, когда часть программы может быть выполнена много раз подряд. FOR...TO... - начало цикла, NEXT... - конец цикла.
То, что стоит между началом и концом цикла, называется телом цикла. Иногда также применяются вложенные циклы, то есть циклы могут быть вложенными один в другой.
FOR X=A TO B STEP H
...................
NEXT X
Здесь X - переменная, A - начальное значение переменной, B - конечное значение переменной, H - шаг, с которым меняется переменная. Если шаг STEP H отсутствует, то по умолчанию шаг H=1. При этом переменная X называется счётчиком цикла. Повторение участка программы с шагом H происходит до тех пор, пока XB.
Пример 1: Напечатать на экране текст 20 раз.
CLS
FOR X=1 TO 20
PRINT "СНовымГодом!"
NEXT X
Пример 2: Вычислить сумму n первых членов ряда S=1+1/4+1/9+...+1/n^2
CLS
INPUT "Введите число членов ряда: n=", n
FOR i = 1 TO n
S = S + 1 / i ^ 2
NEXT i
PRINT "Сумма n первых членов ряда равна: S=", S
Пример 3: Нарисуйте 15 разноцветных концентрических окружностей.
SCREEN 7
FOR i = 1 TO 15
CIRCLE (160, 100), i * 6, i
NEXT i
Пример 4: Разлинуйте экран в клеточку.
SCREEN 7
FOR i = 1 TO 32
LINE (0, 10 * i)-(320, 10 * i), 15
LINE (10 * i, 0)-(10 * i, 200), 15
NEXT i
Примеры 5,6 : Одновременное использование циклического и условного операторов. Вычисление функций, имеющих ограничения в области определения.
Примечание: Оператор IF...THEN...ELSE в QBasic должен быть записан в одну строку!
Пример 5.
CLS
REM Вычислить функцию y=1/(x^2-5*x-6)
FOR x = -10 TO 10
IF x ^ 2 - 5 * x - 6 = 0 THEN PRINT "При x=-1, x=6 функциянеопределена!"
ELSE y = 1 / (x ^ 2 - 5 * x - 6)
PRINT "x="; x, " y="; y
NEXT x
Пример 6.
CLS
REM Вычислить функцию y=1/SQR(x^2-3*x+2)
FOR x = -5 TO 5
IFx>= 1 ANDx<= 2 THENPRINT "При 1<=x=<2 функция не определена!"
ELSE y = 1 / SQR(x ^ 2 - 3 * x + 2)
PRINT "x="; x, " y="; y
NEXT x
2.4 Некоторые полезные команды QBasic
Оператор LOCATE a, b - указывает позицию экрана (a-строка, b-столбец), начиная с которой будет печататься текст или число. Обычно используется перед оператором PRINT. Пример: LOCATE 4, 10: PRINT "Здравствуй, мир!"
Оператор SWAP X1, X2 - заставляет переменные X1 и X2 обменяться своими значениями. Пример:
X = 3
Y = 5
SWAP X, Y
Директива FILES выдает список подкаталогов и файлов в текущем каталоге. Кроме того, выдается свободная память на жестком диске.
Директива SHELL осуществляет сеанс связи с MS-DOS. Возвращение обратно из DOS в QBasic - команда EXIT.
Кроме того, директива SHELL "name" позволяет запускать программу name.exe или name.com, указанную в кавычках. Эта программа должна находиться в текущем каталоге, там же, где и *.bas файл. Расширение exe или com можно не указывать.
2.5 Примеры некоторых программ
Пример 1. Первая программа - Привет мир[4]!
1 PRINT "Hello world!"
Пример 2. Произведение элементов массива
1 2 3 4 5 6 7 8 9 10 11 |
<span style="font-family: sans-serif;">CLS</span> N = 10 <span style="font-family: sans-serif;">DIM</span> M(N) P = 1 FOR I = 1 TO N M(I) = <span style="font-family: sans-serif;">INT</span>(<span style="font-family: sans-serif;">RND</span> * 100)+1 <span style="font-family: sans-serif;">PRINT</span> I; "-"; M(I) P = P * M(I) NEXT I <span style="font-family: sans-serif;">PRINT</span> "_________" <span style="font-family: sans-serif;">PRINT</span> "Proizvedenie = "; P |
Пример 3. Среднее арифметическое элементов массива
1 2 3 4 5 6 7 8 9 10 |
CLS N = 15 DIM M(N) SUMM = 0 FOR I = 1 TO N M(I) = INT(RND * 100) PRINT I; "-"; M(I) SUMM = SUMM + M(I) NEXT I PRINT "Среднее арифметическое чисел = "; SUMM/N |
Пример 4. Нахождение минимального элемента массива
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
CLS INPUT "N"; n DIM e(n) FOR i = 1 TO n INPUT e(i) NEXT CLS min1 = e(1) PRINT "Массив:" FOR i = 1 TO n PRINT e(i); IF e(i) < min1 THEN min1 = e(i): min2 = i NEXT PRINT "Минимальный :"; min1; PRINT "Порядковыйномер:"; min2 SWAP e(min2), e(n) PRINT "Новыймассив:" FOR i = 1 TO n PRINT e(i); NEXT |
Пример 5. Чётное или не чётное число
1
2
3
4 CLS
INPUT "Введите число N=", N
IF N MOD 2 THEN PRINT "Числонечётное" ELSE PRINT "Числочётное"
END
Пример 6. Сумма элементов массива
1 2 3 4 5 6 7 8 9 10 11 |
CLS N = 15 DIM M(N) SUMM = 0 FOR I = 1 TO N M(I) = INT(RND * 100) PRINT I; "-"; M(I) SUMM = SUMM + M(I) NEXT I PRINT "_________" PRINT "SUMM = "; SUMM |
Пример 7. Максимальный элемент массива[5]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<span style="font-family: sans-serif;">CLS</span> N = 15 <span style="font-family: sans-serif;">PRINT</span> "Massiv: "; <span style="font-family: sans-serif;">DIM</span> M(N) FOR I = 1 TO N M(I) = <span style="font-family: sans-serif;">INT</span>(<span style="font-family: sans-serif;">RND</span> * 100) <span style="font-family: sans-serif;">PRINT</span> M(I) ; NEXT I MAX=M(1) FOR I = 2 TO N IF MAX < M(I) THEN MAX=M(I) NEXT I <span style="font-family: sans-serif;">PRINT</span> <span style="font-family: sans-serif;">PRINT</span> "_________" <span style="font-family: sans-serif;">PRINT</span> "Maximum = "; MAX |
Пример 8. Сортировка случайного массива
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<span style="font-family: sans-serif;">CLS</span> N = 10 <span style="font-family: sans-serif;">DIM</span> M(N) <span style="font-family: sans-serif;">PRINT</span> "Massiv:" FOR I = 1 TO N M(I) = <span style="font-family: sans-serif;">INT</span>(<span style="font-family: sans-serif;">RND</span> * 100) <span style="font-family: sans-serif;">PRINT</span> M(I); NEXT I FOR I = 1 TO N - 1 FOR J = I + 1 TO N IF (M(I) > M(J)) THEN <span style="font-family: sans-serif;">SWAP</span> M(I), M(J) NEXT J NEXT I <span style="font-family: sans-serif;">PRINT</span> <span style="font-family: sans-serif;">PRINT</span> "Sort massiv:" FOR I = 1 TO N <span style="font-family: sans-serif;">PRINT</span> M(I); NEXT I |
|
1 |
[/spoiler] |
Пример 9. Счастливый билет или нет?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
REM Анализ "счастливого" билета DECLARE FUNCTION LUCK (M AS LONG) INPUT "Введите номер билета "; N& IF LUCK(N&) = 1 THEN PRINT "Радуйтесь - счастливый" ELSE PRINT "Нет счастья в жизни" END IF END FUNCTION LUCK (M AS LONG) REM Подсчет и сравнение сумм старших и младших цифр M REM Если суммы совпадают, то LUCK=1 DIM A(6) LUCK = 0 IF M < 0 OR M > 999999 THEN PRINT "luck : недопустимыйаргумент": EXIT FUNCTION END IF FOR I = 0 TO 5 A(I) = M MOD 10: ' Выделение очередной цифры M = (M - A(I)) / 10: ' Удаление обработанной цифры NEXT I IF (A(0) + A(1) + A(2) = A(3) + A(4) + A(5)) THEN LUCK = 1 END FUNCTION |
Пример 10. Разложение числа на простые множители
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
REM Разложение числа на простые множители CLS K& = 2: J% = 0 INPUT "Введите целое число: ", M&: M1& = M& / 2 PRINT M&; "="; M1: IF M& MOD K& = 0 THEN J = 1: M& = M& / K&: PRINT K&; IF M&<> 1 THEN PRINT "*"; ELSE K& = K& + 1 END IF IF K&<= M1& THEN GOTO M1 IF J = 0 THEN PRINT " простое число" END |
Заключение
Подведя итог работы, сделаем некоторые выводы. Язык BASIC (расшифровывается как Beginner's All-purpose Symbolic Instruction Code. Его разработчиками выступили Джон Кимини и Томас Куртц в Дартмутском колледже. США, в середине 1960-х годов.
Язык программирования BASIC является достаточно важным в линейке языков высокого уровня и занимает среди них почетное место. С самого начала данный язык задумывали как универсальный для начинающих пользователей, даже средства программирования на BASIC до сих пор включаются в комплект поставки персональных компьютеров, — как обязательный элемент технологии.
Перечислим некоторые достоинства BASIC исходя из позиций массового пользователя):
• простота в синтаксисе;
• простота организации данных, а также самих управляющих структур;
• достаточно полный набор встроенных команд и функций, которые могут легко позволить выполнить различные операции, например - управление текстовым и графическим экраном, или же обработать символьные строки, ошибки и пр).
Среди достоинств BASIC особо следует подчеркнуть наличие возможности работы в режиме интерпретации, когда резко упрощается сам процесс отладки программ: исполнение почти каждой команды можно проверить сразу после ее написания. И ведь правда – достаточно трудно будет найти иной другой язык, программа которого (завершенная программа!) состояла бы только из единственного оператора Print «привет»
Чтобы написать и выполнить такую программу на языке С или Pascal, необходимо оформить текст, скомпилировать программу (создать объектный модуль с расширением ,OBJ); отредактировать ее (создать исполняемый модуль с расширением .ЕХЕ); выполнить программу; переключиться на выходной экран, чтобы увидеть результаты.
Правда, последние шаги выполняются довольно просто (надо нажать пару комбинаций клавиш), но суть дела не меняется.
В среде QBASIC для решения той же задачи вы можете просто набрать PRINT "Здравствуй, Мир!" и нажать {Shift+F5}.
Список использованной литературы
1. Бобровский С. Программирование на языке QBasic для школьников и студентов. - М.: ДЕСС КОМ, 2000. - 207 с.
2. Кетков Ю. Л. GW-, Turbo- и Quick Basic для IBM PC. — М.: Финансы и статистика, 1992. — 240 с.
3. Могилев А.В. Информатика. - М., 1999. - 816 с.
4. Сафронов И.К. Бейсик в задачах и примерах. - СПб.: BHV, 2001. - 215 с.
5. Семашко Г.Л. Программирование для всех. - М.: Наука, 1986. - 325 с.
6. Ставнистый Н.Н. Qbasic в математике. Решение задач с помощью компьютера. Ч1. - М.: СОЛОН-Р, 2001. - 143 с.
7. Федоренко Ю. Алгоритмы и программы на QBASIC. - СПб.: Питер, 2002. - 287 с.
8. Хомоненко А.Д. Основы современных компьютерных технологий. - СПб.: КОРОНА принт, 1998. - 448 с.
9. Чернов Б.И. Программирование на алгоритмических языках Бейсик, Фортран, Паскаль. - М.: Просвещение, 1991. - 192 с.
-
Чернов Б.И. Программирование на алгоритмических языках Бейсик, Фортран, Паскаль. - М.: Просвещение, 1991. - 192 с. – С. 37. ↑
-
. Кетков Ю. Л. GW-, Turbo- и Quick Basic для IBM PC. — М.: Финансы и статистика, 1992. — 240 с. – С.109 ↑
-
Хомоненко А.Д. Основы современных компьютерных технологий. - СПб.: КОРОНА принт, 1998. - 448 с. – С. 90-92 ↑
-
Сафронов И.К. Бейсик в задачах и примерах. - СПб.: BHV, 2001. - 215 с. – С 78. ↑
-
Ставнистый Н.Н. Qbasic в математике. Решение задач с помощью компьютера. Ч1. - М.: СОЛОН-Р, 2001. - 143 с. – С.56. ↑
- Применение процессного подхода для оптимизации бизнес-процессов (Анализ применяемых технологий)
- Понятие и значение приватизации (Типовые функции)
- Гражданско-правовое регулирование вексельного обращения
- Мировой финансовый кризис: причины и последствия (Финансовые кризисы как часть экономической системы)
- Развитие лидерских качеств руководителя (Лидеры и аутсайдеры)
- Организация и анализ расчётно-кассового обслуживания клиентов в банке (на примере РКЦ г. Колпашево)
- Анализ действующей в Российской Федерации системы налогооблажения банков
- Учет поступления основных средств (Объект основных средств)
- СПУСКОВОЙ МАКЕТ И ЕГО ЗНАЧЕНИЕ В ПОЛИГРАФИИ
- Переходная Антиква. Ульям Кезлон, Джон Баскервиль, Пьер Симон Фурнье
- РЕКЛАМНО-ГРАФИЧЕСКИЙ КОМПЛЕКС ДЛЯ МОСКОВСКОГО ПЛАНЕТАРИЯ (Описание объекта)
- Безопасность серверных операционных систем