Знакомство с языком QBasic
Все
действия, которые совершает компьютер, выполняются на основе
инструкций. Для того, чтобы их написать, программист пишет программу.
Однако, в силу того, что в инструкциях довольно трудно разобраться, был
придуман язык Ассемблер, где вместо чисел пишутся мнемонические коды
программы, которые легче запомнить и в них разобраться. Язык Ассемблер
является языком низкого уровня, то есть максимально приближенным к
машинным командам и является довольно сложным языком для
программирования. Например, чтобы запрограммировать вывод на экран
операции «2*8+Sin(1.2)» требуется выполнение несколько десятков операций.
Поэтому
для облегчения труда программиста были разработаны языки
программирования высокого уровня, в которых для выполнения указанной
операции требуется одна строчка, например, «PRINT 2*8+SIN(1.2)».
Программы, написанные для языка Ассемблер, имеют преимущества в том,
что они меньше требуют памяти и быстрее выполняются. А языки высокого
уровня, несмотря на то, что их легче написать и отладить, требуют
больше памяти и времени для выполнения. Поэтому на языках низкого
уровня пишутся программы, критичные к быстродействию, например,
драйверы устройств, к которым происходит частое обращение, а на языках
высокого уровня - большинство остальных программ. Достаточно сказать,
что некоторые модули системы Windows и пакеты программ Microsoft Office были выполнены на языке Паскаль.
В
настоящее время в общеобразовательных школах существуют разные
программы по информатике, которые содержат две части: знакомство с
системой Windows и началами программирования.
При этом, как правило, происходит знакомство с одним из языков программирования: Qbasic, Visual Basic и Turbo Pascale.
Выбор языка производится по решению учителя. Иногда возникает вопрос:
какой из языков лучше? Все они обладают своими достоинствами и
недостатками, однако, переход от одного языка к другому происходит
довольно просто, так как принципы, в них заложенные одинаковы. Поэтому
основной задачей при изучении программирования является знакомство с
общими принципами ее работы.
В данной главе дается описание основ с началами программирования на языке QBasic.
Этот язык выбран потому, что он достаточно прост и его можно легко
установить на компьютере, так как он находится в составе системы Ms DOS.
Описание языка проиллюстрируем большим количеством примеров, по мере
описания которых будут вводиться основные понятия программирования. На
практике такой подход позволяет достаточно быстро и в увлекательной
форме изучать язык программирования. Далее вместо названия Qbasic будем писать просто Бейсик.
Существует несколько видов данного языка. Это GW-Basic, TurboBasic, Qbasic
и так далее. Работа с этими версиями очень похожи друг на друга
принципами построения, базовыми наборами операторов и конструкциями.
Поэтому, изучив один вариант, легко перейти к другому.
Перед практической работой с языком рекомендуется создать новую директорию под названием «Бейсик», «Qbasic» или дать аналогичное наименование, куда переместить два файла: Qbasic.exe и Qbasik.hlp.
В первом файле находится программа, при помощи которой можно набрать
исходный текст программы, во втором находится справочное описание
операторов языка. Кроме того, в данную директорию следует поместить
программу, которая позволит вводить русские символы (кириллицу).
Подобных программ имеется довольно много и каждая из них позволяет
переходить к кириллице и обратно на латинский язык при помощи своей
последовательности горячих клавиш. Желательно иметь такую программу,
сочетание клавиш которой не совпадает с горячими клавишами самого
пакета, так как при нажатии на эти клавиши будет выполнена какая-либо
команда из меню Бейсика и произойдет переход на кириллицу. Например,
если переход на кириллицу происходит с помощью клавиш Shift+Alt,
то при нажатии на них одновременно курсор перейдет в верхнее меню и
произойдет переход на кириллицу. Поэтому в данном случае следует выйти
из верхнего меню, нажав клавишу Esc, и продолжить работу.
В
данной директории можно также разместить файлы с исходными текстами
программ, которые будут создаваться в процессе практической работы.
Для запуска программы в системе ДОС желательно использовать программу Norton Commander. Для того, чтобы применять при работе мышку, нужно иметь в файле Autoexec.bat строчку типа: «C:\UTIL\Mouse», где «C:\UTIL» - название директории, где находится программа «Mouse».
Кроме того, требуется выполнить программу установки драйвера перехода
из латинского языка на кириллицу и обратно, что также можно включить в
файл Autoexec.bat. Краткие сведения о том, как работать в системе ДОС описано в отдельной главе. Для запуска программы Qbasic, нужно в панели Norton Commander найти файл с названием «Qbasic.exe», установить на нем курсор и нажать на клавишу Enter.
Для запуска программы в системе Windows следует войти в режим эмуляции системы ДОС (Пуск Программы Сеанс Ms-ДОС), вызвать программу Norton Commander,
выполнить программу установки драйвера перехода из латинского языка на
кириллицу (нажав на соответствующий значок), после чего войти в
директорию, где находится файл с Бейсиком, подвести курсор к названию «Qbasic.exe» и нажать на клавишу Enter.
Д
ля того, чтобы вызвать программу «Qbasic» из любой директории, а не только оттуда, где она находится, нужно установить команду Path в файле Autoexec.bat, где указать имя директории с программой. Например, «Path C:\Qbasic», где «C:\Qbasic» - имя директории, где находится программа. Если в файле Autoexec.bat
уже имеется данная команда, но с другими именами директорий, то
необходимо добавить новое название директории через точку с запятой.
Например, если была строчка «Path C:\Windows», то следует ввести «Path C:\Windows;C:\Qbasic». Это может быть полезным, когда на компьютере работает несколько пользователей, каждый из которых имеет свою директорию.
После
вызова программы на экране появится окно, показанное на рисунке выше.
Оно содержит верхнее меню с названиями групп режимов (File, Edit, View, Search, Run, Debug, Options и Help),
основное поле, где находится текст программы и внизу статусную строчку.
Далее эти компоненты будут рассмотрены более подробно, а в конце главы
приведен краткий список режимов верхнего меню.
После нажатия на клавишу Enter произойдет переход в справочную систему программы, а при нажатии на клавишу Esc
окно очистится и можно начать вводить исходный текст программы. Если на
экране появилась справочная система, то выйти из нее можно также нажав
на клавишу Esc.
Более
подробно команды главного меню и основные операторы кратко будут
описаны далее, а сейчас перейдем к написанию небольших пробных программ.
УРОК 1. Первые программы
Наберем в окне текст «Print “Первая программа”». Эта программа содержит всего один оператор, который выводит на экран текст, указанный в кавычках. Это оператор «PRINT»,
позволяющий вывести на экран текст, который после названия оператора
заключен в кавычки. Для введения текста используются клавиши
клавиатуры, а для перехода с латинского языка на кириллицу применяется
сочетание клавиш, которое зависит от установленной программы. После
набора строчки следует нажать на клавишу Enter. В результате выполнения этой программы на экране появится текст: «Первая программа» (см. рис. выше).
Вывод информации в Qbasic
производится в двух режимах: текстовом и графическом, причем текстовой
режим установлен автоматически, по умолчанию. Для того, чтобы выводить
графику на экран дисплея, используются другие операторы. В самом начале
работы мы рассмотрим работу с текстовыми представлениями, а затем
перейдем к описанию работы с графикой.
Каким
образом происходит ввод символов? На экране в основном окне имеется
курсор, который представлен в виде мигающей горизонтальной черточки,
как это показано на рисунке слева. Курсор определяет место, куда будет
вставлен текст при нажатии на клавишу с символом. Для перемещения
курсора используются клавиши со стрелками. Также для его перемещения
можно использовать мышь, для чего следует установить курсор мыши на
новом месте текста и щелкнуть кнопкой мыши. Далее, говоря «щелкнуть
мышью», мы имеем в виду, что действие это производится левой кнопкой
мыши, которую нужно нажать и отпустить. Если щелкнуть правой кнопкой
мыши по названию оператора, то на экране появится окно со справкой о
данном операторе. Итак, после того, как курсор установлен в нужном
месте, можно вводить текст.
Для ввода символов текста
используется клавиатура, которая напоминает клавиатуру пишущей машинки,
описание клавиш дано в начале книги. Как правило, в самом начале работы
при нажатии на клавишу с символом произойдет ввод строчного
(маленького) символа, при этом вводимый символ появится на экране.
Ввод текста происходит путем набора символов клавишами клавиатуры. В конце строки нужно нажать на клавишу Enter.
Это действие воспринимается системой как особый символ, который обычно
не выводится на экран, при этом курсор перейдет на начало следующей
строки.
После
нажатия на данную клавишу программа проверит синтаксис набранного на
строке текста. Что произойдет, когда будет введена строка с ошибкой?
Допустим, мы ввели строчку: «PRINT “” TO», в которой находится непонятное для интерпретатора слово «ТО». В этом случае на экране появится сообщение об ошибке, как это показано на рисунке. Нажмите на ОК
и исправьте оператор, курсор при этом будет находиться либо на месте
ошибки, либо правее ее. Если требуется продолжить набор программы, то
можно воспользоваться клавишей со стрелкой вниз для перехода на
следующую строчку. Однако, при запуске программы на выполнение в
строчке, имеющей ошибку, будет выдано сообщение так же, как это было
сделано при наборе текста.
Можно ввести оператор «PRINT» как «Print», «print», «pRinT» и так далее, но п осле нажатия на клавишу Enter, на экране появится название оператора прописными символами («PRINT»).
Для того, чтобы легче читать программу, имена переменных лучше набирать
маленькими (строчными) символами или весь текст, за исключением того,
который находится в кавычках. Программа сама установит большие
(заглавные) символы там, где находятся ключевые слова.
Для объединения двух строк можно установить курсор в конце первой строки (правее самого правого символа) и нажать на клавишу Del или установить в начале следующей строки и нажать на Backspace.
Чтобы ввести прописные (большие или заглавные) символы, нажмите на клавишу Shift
и, не отпуская ее, нажмите на нужный символ. Когда возникает
необходимость набора большого количества заглавных символов, нажмите на
клавишу Caps Lock и отпустите ее, при этом на клавиатуре
загорится лампочка-индикатор с тем же названием. После этого введите
нужное число символов, которые будут большими. Для отмены этого режима
и перехода в режим ввода строчных (маленьких) символов, снова нажмите
на ту же клавишу (Caps Lock), при этом индикатор погаснет.
Можно также использовать выделение текста.
Поместите курсор перед первым символом текста, который нужно выделить,
нажмите на левую клавишу мыши и, не отпуская ее, переместите курсор на
конец текста, после чего отпустите клавишу мыши. При этом символы будут
выведены на экране синим цветом, а фон станет серым, то есть произойдет
инверсия цвета на противоположный, как это показано на примере: Это предложение выделено. Выделение можно производить не только с начала текста, но и с его конца. После выделения текст можно удалить, нажав на клавишу Del.
Для
того, чтобы выделить текст при помощи клавиатуры, вначале установите
курсор в то место, где должно быть начало выделения и нажмите на
комбинацию Shift+. Для того, чтобы уменьшить выделение, можно воспользоваться клавишами Shift+. Для выделения нескольких строк - Shift+ или Shift+.
Выделив текст, его можно поместить в буфер обмена, для чего воспользуйтесь режимом Edit Copy. При помощи режима Edit Cut
текст вырезается и помещается в буфер обмена. Для того, чтобы вставить
содержимое буфера обмена сначала установите курсор в место, где его
нужно вставить и воспользуйтесь режимом Edit Paste.
Если перед выделением текста нажать на кнопку - ,
то выделенный текст также можно поместить в буфер обмена для
использования его в текущем и другом приложении. Для этого используется
кнопка - , а для того, чтобы вставить содержимое из буфера обмена, нужно нажать на кнопку - .
При помощи буфера обмена можно копировать текст в другое место
программы или даже в другую программу. Отметим, что буфер, который
используется при помощи режимов меню File и при помощи кнопки - это разные буфера и их содержимое разное также.
Чтобы снять выделение, следует щелкнуть кнопкой мыши в произвольном месте текста.
При вводе текста часто возникает необходимость удаления и корректировки символов. Для удаления символа установите курсор перед уничтожаемым символом и нажмите на клавишу Del. Если курсор поставлен после необходимого символа, то нажмите на клавишу Backspace. Для удаления фрагмента текста требуется выделить текст и нажать на клавишу Del .
При работе с текстами применяют два режима: вставки и корректировки. Для вставки символов
необходимо установить курсор в место, где следует вставить текст.
Наберите при помощи клавиатуры символ, при этом существующий текст
раздвинется и появятся введенные символы. Для корректировки символов требуется сначала нажать на клавишу Ins,
затем набрать текст, при этом курсор превратится из черточки в
прямоугольник, а программа перейдет в режим замены символов. При
нажатии на клавишу символ над курсором пропадет и на его месте появится
введенный символ. При повторном нажатии на клавишу Ins произойдет переход в режим вставки.
Перемещение изображения на экране. При помощи мыши.
Для этого нажмите на левую кнопку мыши и, не отпуская ее, переместите
курсор до границы окна и немного дальше, при этом изображение начинает
перемещается. Например, если подвести курсор при нажатой клавише мыши к
нижней границе окна и чуть дальше, на линию прокрутки, то изображение
начнет перемещаться вверх. При пустом экране это видно по масштабной
линейке, которая находится справа на экране. Можно также использовать
кнопки прокрутки, например, если нужно просмотреть текст, который
находится ниже. Для этого нажмите на квадрат со стрелкой, острие
которой направлено вниз и находящейся внизу вертикальной полосы
прокрутки. Держите левую кнопку мыши нажатой до тех пор, пока не
появится нужный текст. Можно нажать в любом месте линии прокрутки,
текст при этом будет перемещаться.
При помощи клавиш. Для этого используйте стандартные клавиши клавиатуры: , , , , Page down, Page up, End, Home.
Работа с мышью. При работе с текстом часто используется мышь. Рассмотрим такие действия подробнее.
Перемещение по тексту.
Для перемещения текстового курсора установите курсор мыши на нужное
место на экране, нажмите и отпустите левую кнопку мыши. При этом на
выбранном месте появится текстовой курсор в виде черточки.
Работа с верхними группами режимов.
Чтобы вызвать необходимый режим, следует подвести курсор либо на нужную
пиктограмму, либо на имя в главном меню и нажать на левую клавишу мыши.
При этом на экране раскроется подменю, в котором необходимо выбрать
нужный режим. Подведя к нему курсор, нажмите на левую кнопку мыши.
Существует разница между двойным нажатием и двумя нажатиями на левую кнопку мыши. Двойное нажатие мыши
отличается от двух нажатий временем, которое проходит между ними. При
коротком интервале система воспринимает это действие как двойное
нажатие, при длительном – как два нажатия. Этот интервал можно изменить
командами системы Windows или в пакете Norton Utilities.
Двойное нажатие дает иной эффект, нежели одинарное. Например, если
нажать на слове в тексте, то на месте нажатия установится курсор, если
сделать двойное нажатие - слово выделится.
Для того, чтобы вызвать команду из режима верхнего меню, подведите курсор мыши к названию группы, например, File.
Нажмите и отпустите левую кнопку мыши. В результате появится
ниспадающее меню, в котором находятся названия режимов. Подведите
курсор к нужному режиму и щелкните левой кнопкой мыши. Чтобы
воспользоваться режимом с кнопкой, подведите курсор мыши на
изображение кнопки, нажмите и отпустите левую кнопку мыши. Если
подвести курсор к кнопке и ничего не нажимать в течение нескольких
секунд, то около курсора появится подсказка с кратким описанием
соответствующего режима, вызываемого такой кнопкой.
Для того, чтобы просмотреть результат выполнения программы, нужно воспользоваться режимом Run Start. Для этого подведите курсор мыши к названию «Run» в
верхнем меню и щелкните левой кнопкой мыши. На экране появится панно с
режимами, как это показано на рисунке слева, после чего щелкните по
названию «Start Shift+F5». После этого на экране появится окно, в котором можно увидеть действие программы, как это показано на рисунке ниже.
Результат выполнения находится внизу экрана, который состоит из надписи «Первая программа». Строчки выше показывают, какие программы были выполнены ранее. В нашем примере выполнялась программа Qbasic.exe. Вверху окна находятся сообщения от программы, которая устанавливает символы кириллицы. В самом низу окна имеется сообщение: «Press any key to continue» (Нажмите любую клавишу для продолжения работы). Нажав любую клавишу, мы снова попадем в главное окно программы.
Что означает надпись: «Start Shift+F5»? Первое слово (Start)
соответствует названию данного режима и обозначает начало выполнения
программы после того, как по этим наименованиям щелкнуть левой кнопкой
мыши. Далее следует комбинация клавиш (Shift+F5),
при помощи которой также можно выполнить данный режим. То есть набрав
программу, и не входя в верхнее меню, нажмите на эти клавиши
клавиатуры. На экране появится окно, в котором показан результат
выполнения программы. Данные клавиши называются «горячими»
(другое название «быстрые»), а их список можно увидеть, открывая разные
панно верхнего меню. Кроме того, их список приведен в конце этой главы.
При
изучении программирования многие авторы обучают сначала принципам
построения алгоритма, а затем показывают, как создавать первые
программы. Однако алгоритмы на практике пишутся при большом количестве
операторов и разветвлений в программе. При простых действиях, которые
приведены в данной главе текст программы прост и понятен, а потому не
требует составления алгоритма.
Теперь наберем другой оператор «PRINT 2+6*7». Для того, чтобы просмотреть результат, снова воспользуемся режимом Run Start, и в полученном окне появится результат арифметической операции - 44.
Как видно, в операторе PRINT могут содержаться разного вида значения: в кавычках и цифры без кавычек. Текст в кавычках называется символами, а цифры без кавычек для вычисления - числами. Что будет, если ввести цифры в кавычках, например, «“2+6*7”»? Это также будут символы и результат операции «PRINT “2+6*7”» будет не 44, а появление на экране набора символов 2+6*7. Указанное выше, а именно «“Первая программа”», «2», «6», «7», «“2+6*7”» являются константами, то есть не изменяемыми во время работы программы величинами.
В программе существуют также переменные, содержимое которых меняется во время работы программы. Приведем пример:
i% = 1
PRINT i%
i% = 4
PRINT i%
В данном примере в первом операторе находится оператор присваивания, при помощи которого в переменную i%
заносится значение единица. В этом операторе слева находится имя
переменной, в которую заносится правая часть. В правой части может
находиться не только определенное значение, но и арифметическое
выражение, например, «2+3», которое равно пяти и это значение будет
занесено в переменную. В операторе i%=1 + 2 * 3 в переменную i%
будет занесено значение 7. Это происходит потому, что в переменной
хранится только одно значение, поэтому сначала вычисляется выражение,
которое находится в правой части, а затем оно помещается в переменную.
Приведем примеры правильных операций присваивания: i1%=3+5, i2%=i1%+3*5. Приведем примеры неверных операций: i1%+2=3 (выражение в левой части, а не в правой), i1%+3+5*6 (нет оператора присваивания, знака равенства), i1%=i2%=4 (два оператора присваивания).
Запустим программу на выполнение при помощи режима Run Start
и получим два значения 1 и 4. В следующих примерах, когда будем
указывать «запустим программу» больше не будем упоминать о том, что
данное действие вызывается при помощи режима Run Start,
подразумевая это. Здесь и далее, справа от исходного текста программы
показывается результат ее работы. При этом на рисунке будет изображен
не весь экран, а только его часть, которая относится к результатам. На
экране текст выводится светлыми символами на черном фоне, но мы для
наглядности будем выводить черные символы на сером фоне, что позволяет
сделать оператор «COLOR 0, 7», который установлен вначале программы.
Символы «i%»
обозначают числовую переменную, для которой в первом операторе
присваивается значение 1, во втором - выводится значение переменной на
экран монитора, которое она содержит в данный момент, в третьем
операторе присваивается значение 4 и в четвертом – это значение
выводится на экран.
Иногда
требуется вывести на экран двойные кавычки. Однако, так как они
используются для выделения текста и имеют специальное назначение, то
для их вывода применяют оператор Chr$(34). Например, для вывода строчки: "Текст", нужно воспользоваться следующей записью: PRINT CHR$(34)+”Текст”+CHR$(34).
Задачи. Выведите на экран следующие значения:
1. текст «Это наш первый урок».
2. результат вычисления 3*8.
3. текст «6+4»
4. результат вычислений 4+5+7+8+11
5. текст «изучаем программирование»
6. результат 2*3*4*5
7. результат 1-6-9-11-20
8. тексты «Сидоров - двоечник», «Иванов – отличник»
9. на первой строчке текст «Количество учеников в нашем классе». На второй сточке – «Число учеников соседнего класса».
|