Первые уроки

1. Три кита языка программирования

   Любой язык программирования опирается на трех китов: следование, ветвление, повторение (цикл). Я бы добавил сюда еще одного кита - подпрограмму. Подпрограммы у нас впереди, а про остальное поговорим сейчас.

   Всем нам “по жизни” хорошо известно понятие алгоритма. Представьте себе, что в незнакомом городе Вам нужно попасть на вокзал. Если Вы спросите, как туда проехать, то получите ответ типа: “Пройдете до следующего перекрестка и сядете там на автобус №17. Проедете на нем две остановки в сторону центра и пересядете на троллейбус №6 до конечной остановки”. Это типичное следование, т.е. совокупность действий, выполняемых последовательно, друг за другом. Нельзя выполнить очередную инструкцию прежде, чем будет выполнена предыдущая.

   Если возможны варианты в выборе маршрута, то данные Вам инструкции будут содержать ветвление: “Если подойдет автобус №12, то доедете им до вокзала без пересадок, иначе проедете любым транспортом три остановки до универмага и сядете там на автобус №23 ...”. В этом случае Ваши действия зависят от того, какой автобус первым подойдет к остановке.

   Предположим, что Вы хотите дождаться автобуса №12, чтобы с Вашими двумя чемоданами ехать без пересадок. Тогда фактически будет выполнен следующий алгоритм: “Ждать, пока придет автобус №12”. Этот алгоритм содержит повторение. Ждем автобуса. Подходит автобус. Смотрим: №12? Увы, нет. Ждем следующего автобуса. Подходит автобус. Смотрим: №12? Увы, нет. Ждем следующего автобуса... Одни и те же инструкции выполняются несколько раз. Теоретически возможно даже бесконечное число повторений (программисты говорят - зацикливание).

   Ветвление в большинстве языков программирования, в том числе и в Бейсике, реализуется с помощью условного оператора, в котором используются ключевые слова IF, THEN, ELSE, в переводе на русский они означают ЕСЛИ, ТО, ИНАЧЕ.

   В программе на Бейсике оператор ветвления может записываться в одну строку

IF условие THEN ветвь_”то”

- неполное ветвление

или

 

IF условие THEN ветвь_”то” ELSE ветвь_”иначе”

- полное ветвление

и в несколько строк

IF условие THEN

 

   ветвь_”то”

- неполное ветвление

END IF

 

или

 

IF условие THEN

 

   ветвь_”то”

 

ELSE

- полное ветвление

   ветвь_”иначе”

 

END IF

 

   Ветвь “то” исполняется, если при проверке окажется, что условие верно. Если же окажется, что условие неверно, то будет исполнена ветвь “иначе”.

Позже мы познакомимся и с так называемым множественным ветвлением (выбором).

   Операторов цикла в Бейсике несколько. Есть два оператора цикла “повторяй, пока выполняется условие”:

DO

 

   тело_цикла

- проверка условия в конце цикла

LOOP WHILE условие

 

 

 

DO WHILE условие

 

   тело_цикла

- проверка условия в начале цикла

LOOP

 

   Из цикла DO можно выйти досрочно по команде EXIT DO, даже если условие выполнения продолжает оставаться истинным.

   Цикл “для” (цикл с параметром):

FOR параметр = начальное_значение TO конечное_значение [STEP шаг]

   тело_цикла

NEXT параметр

   Заметим, что часть заголовка цикла - STEP шаг - может отсутствовать (поэтому она взята в квадратные скобки!). В этом случае считается, что параметр цикла увеличивается каждый раз на 1.

   Параметр - это имя некоторой переменной величины. Для каждой переменной Quick Basic отводит место в оперативной памяти, где и хранится ее текущее значение.

   Оператор цикла “для” работает следующим образом: при входе в цикл параметру присваивается начальное значение. Проверяется условие “значение параметра не больше конечного значения” при положительном шаге изменения параметра или условие “значение параметра не меньше конечного значения” при отрицательном шаге . Если проверяемое условие истинно, то выполняется тело цикла, затем к значению параметра прибавляется шаг изменения и происходитвозврат к проверке условия. При невыполнении условия управление передается оператору, следующему за признаком конца цикла FOR-NEXT.

   Из этого цикла также можно выйти, не дожидаясь конца повторений с помощью оператора EXIT FOR.

2. Среда программирования Quick Basic 4.5

   Quick Basic – DOS-приложение, т.е. он работает в MS-DOS’е. Запустить Quick Basic можно несколькими способами. Самый простой - войти в каталог Quick Basic’а, выделить курсором файл qb.exe и нажать Enter. Однако это и самый плохой способ. В этом случае придется настраивать Quick Basic на работу с каталогом, в котором хранятся Ваши программы, так как хранить свои программы вмести с файлами Quick Basic’а категорически не рекомендуется!

Второй способ - сделать активным нужный каталог и набрать в командной строке qb.exe (или просто qb) и нажать Enter. Чтобы этот вариант сработал, нужно внести описание пути к файлу qb.exe в autoexec.bat.

   Третий способ - настроить NC так, чтобы Quick Basic запускался автоматически, если выбрать файл с расширением .bas и нажать клавишу Enter. Этот способ требует большего знания NC, чем о ней рассказано в этой книге, но, по мнению автора, он наиболее удобный.

   После запуска программы qb.exe на экране появится такая картинка

   Основное поле (как правило, оно голубого цвета) называется окном редактора, в этом окне мы будем набирать тексты наших программ. В верхней строке экрана расположены слова, образующие главное меню Quick Basic. (Может быть, что этих слов меньше, чем на рисунке. Это значит, что Quick Basic работает в режиме сокращенного, а не полного, меню. Переход в режим полного меню – Full Menus - “спрятан” в пункте Options главного меню.)

   В середине следующей строки расположено имя программы (точнее, имя файла с этой программой). Пока мы не дали программе другое имя, она будет называться “Untitle”, что значит “не имеющая заголовка”.

   Познакомимся теперь с пунктом File главного меню. Нажмем клавишу Alt - при этом слово File станет светлым на черном фоне. Если теперь нажать Enter, то из этого слова “выпадет” табличка с новыми пунктами - маленькая, если Quick Basic находится в режиме сокращенного меню и большая, если установлен режим полного меню.

New Program

 

New Program

Open Program

 

Open Program

Save As...

 

Merge...

Print...

 

Save

Exit

 

Save As...

 

 

Save All

 

 

Create File...

 

 

Load File...

 

 

Unload File...

 

 

Print...

 

 

DOS Shell

 

 

Exit

 

   Для первых занятий достаточен режим сокращенного меню, но постепенно мы будем знакомиться и с пунктами расширенного меню.

   New Program - перейти к набору новой программы. Этот пункт следует выполнить, если мы перед тем работали с другой программой и окно редактора не пусто. Quick Basic автоматически выполняет этот пункт при обычном запуске.

   Open Program... - загрузить готовую программу. Quick Basic запросит имя программы в специальном появившемся окне. Кроме имени программы возможно придется указать диск и каталог, в котором она находится.

   Save As... - записать программу на диск с тем же или новым именем.

   Print... - напечатать текст программы на принтере.

   Exit - выйти из среды программирования Quick Basic.

 

3. Простейшая программа: вывод текста

   Наберем в окне редактора простенькую программу и поясним, что делает каждый из написанных операторов:

'Простейшая программа на Бейсике

- комментарий

CLS

- очистка экрана

FOR i=1 TO 20

- заголовок цикла

   LOCATE i, i

- установить курсор

   PRINT " РЕКЛАМА "

- вывести на экран

NEXT i

- конец цикла

   LOCATE номер_строки, номер_позиции - устанавливает курсор в заданное место экрана. Используется только в текстовом режиме.
   Номер строки - число от 1 до 25.
   Номер позиции - число от 1 до 80.

   Редактор в Quick Basic особенный - “думающий”. После того как набрана строка и нажата клавиша ввода, выполняется проверка правильности написанного. При наличии ошибки тут же выдается предупреждение. Чаще всего оно имеет вид “Expecting символ or символ”, т.е. одновременно сообщается, что, по мнению редактора, следует вставить в текст для исправления ошибки.

   Если при наборе строки операторы писать маленькими, строчными буквами, то после нажатия на Enter все они (если в строке нет ошибок!) запишутся большими, прописными буквами. Этот прием помогает заметить ошибку в имени оператора даже при отсутствии предупреждения Quick Basic’а.

   Для сохранения программы на диске выйдем в главное меню (нажмем и отпустим клавишу Alt), раскроем пункт File и выберем Save As... Многоточие обозначает, что при выборе такого пункта Quick Basic вступает в диалог с пользователем. В данном случае на экране появится такое окно:

 

   Не следует записывать свои программы в каталог Quick Basic’а. Предположим, что они хранятся в каталоге E:\MYBASIC. Если при запуске qb.exe активным был именно этот каталог, то все пункты меню, работающие с диском, будут использовать его по умолчанию.

   Наберем теперь в окошке с именем File Name имя программы - PRG.BAS. (Расширение .BAS можно было и не набирать - Quick Basic добавляет его автоматически.) Но прежде, чем нажать Enter, давайте посмотрим, в каком виде текст программы будет записан на диск. Если в окошке Format точка в круглых скобках стоит возле слова Text, то на диске окажется обычный текст, с которым могут работать и другие программы (например, этот файл можно будет посмотреть и в NC). Если же точка стоит возле слова QuickBASIC, то записанный на диск текст сможет прочитать и понять только сам Quick Basic! Заметим, кстати, что некоторые операции в Quick Basic выполняются только с программой, записанной в текстовом формате.

   Чтобы попасть (при необходимости) в окошко Format, нажмем несколько раз клавишу Tab. Переставим точку с помощью стрелки “вниз” и нажмем Enter. Все - программа записана на диск.

   Для выполнения набранной программы снова выйдем в главное меню и раскроем пункт Run. Выберем в выпавшем окне пункт Start Shift+F5 и нажмем клавишу ввода. Сочетание Shift+F5, написанное возле слова Start - это обозначение так называемой “горячей клавиши”. Нажатие такой комбинации клавиш выполняет те же действия, что и соответствующий пункт меню, но “напрямую” - непосредственно из окна редактора программы, без захода в главное меню.

   В результате выполнения программы PRG.BAS на экране появится “лесенка” из слова “РЕКЛАМА”:

   Задание. Выведите слова “в столбик” (измените оператор LOCATE). Что произойдет, если попытаться вывести слова “в строку”? Объясните, почему.

   Измените текст, выводимый оператором PRINT.

 

4. Возможности редактора cреды программирования Quick Basic

   Каждый редактор текста обязан уметь работать не только с отдельными символами, но и с более крупными кусками - фрагментами текста. Фрагмент может занимать часть одной строки или охватывать одну или несколько строк. Для выделения части строки следует поставить курсор на начало фрагмента и несколько раз нажать комбинацию клавиш Shift+[ è]. Можно выделить текст влево от курсора, если несколько раз нажать на Shift+[ ç]. Аналогично выделяются и строки, только нужно воспользоваться комбинацией клавиш Shift+[ é] или Shift+[ê].

   Работа с фрагментами сосредоточена в пункте Edit главного меню (в скобках указаны “горячие” клавиши):

   Cut (Shift+Del) - удалить выделенный фрагмент. Удаленный фрагмент исчезает с экрана, но временно сохраняется в специальной области памяти. Эту область программисты называют буфером или, по-простому, “карманом”. В буфере хранится только последний удаленный фрагмент.

   Copy (Ctrl+Ins) - выделенный фрагмент копируется в буфер, удаления с экрана не происходит.

   Paste (Shift+Ins) - содержимое буфера вставляется в текст программы (текст “раздвигается”). Место вставки указывает курсор.

   Clear (Del) - выделенный фрагмент удаляется без сохранения в буфере.

С помощью пунктов Cut и Paste можно перенести любой фрагмент в другое место программы; Copy и Paste позволяют “размножить” один и тот же фрагмент. Если нужный фрагмент занимает ровно одну строку, то ее можно не выделять. Строка удаляется комбинацией Ctrl+Y, но при этом, в отличие от других текстовых редакторов, попадает в буфер и может быть восстановлена в том же или другом месте!

   Задание. Используя копирование и вставку фрагментов, создайте программу, которая выведет на экран несколько полосок слов.

 

 

Оглавление


@Гутман Г.Н. Мой любимый QuickBASIC, 2001г.

Ваши отзывы и пожелания: gutgut@sama.ru

 

Сайт управляется системой uCoz