Автор:Бабаев С.К
Тема: основы программирования в Quick Basic.
1.1.Первые программы
Начнём с самой простой программы:
10 PRINT “HELLO WORLD!”
20 END
Рассмотрим используемые здесь операторы.
PRINT – предназначен для
вывода информации на экран. В данном случае это текст HELLO WORLD!. В оператор PRINT можно заключить
действие с вычислениями, например:
10
PRINT 9*89*45+6*(45+9)
20 END
Результатом, выведенным на экран будет
число 36369. В кавычки заключаются только текст. Эту же программы можно было
записать программу иначе:
10 A=9
20 B=45
30 C=89
40 D=6
50 PRINT A*C*B+D*(B+A)
60 END
Здесь изначально буквам присваиваются
определённые числовые значения. В операторе PRINT фигурируют уже не сами числа а буквы. Особенно такой формат
записи пригодиться при составлении программы в которой присвоить значения
должен сам пользователь - оператор INPUT, но с ним мы
познакомимся позже.
1.2.Операции над числами
Приведённая выше * обозначает операцию умножения. Вот ещё
некоторые из них:
+
суммирование
-
вычитание
/ деление
Сравнение обозначается следующими
способами:
<
строго меньше
>
строго больше
>= больше равно
<= меньше либо равно
Математические функции:
ABS(x) – модуль х;
ATN(x) – арктангенс х;
COS(x) – косинус х;
SIN(x) – синус х;
TAN(x) – тангенс х;
LOG(x) – натуральный логарифм х (по основанию
е);
SQR(x) – корень из х;
EXP(x) – экспонента х;
FIX(x) – отбрасывание дробной части х;
A^X
- возвышает число А в степень Х.
Знаний приведённых здесь математических
функций должно быть достаточно для создания довольно сложных математических
программ.
1.3.Ввод данных с клавиатуры
В программах предназначенных для
вычислений чего – либо, например корней квадратного уравнения, необходимо чтобы
пользователь сам ввёл значения a,b и c. Приведу небольшой пример:
10 PRINT “Введите А и B”
20 INPUT A, B
30 С = A+B
40 PRINT C
50 END
Рассмотрим код подробнее:
INPUT A, B – программа ожидает вода чисел А и B.
С = A+B – С присваивается
значение суммы двух введенных чисел.
PRINT C – на экран
выводится значение С.
Чтобы исключить из программы лишний
оператор PRINT можно текст Введите А и B в кавычках поместить прямо в оператор INPUT перед А,B:
10
INPUT “Введите А и B” A, B
20 С = A+B
30 PRINT C
40 END
INPUT можно написать и отдельно для
обоих чисел, тогда вы будете вводить числа не через запятую как в предыдущем
примере, а на разных строках.
1.4. Оператор GoTo
Все до сих пор составленные нами
программы выполняли вычисления только один раз а потом заканчивали свою работу.
Но если перед END
поставить GOTO и сослаться на нужную
строку кода программа будет выполняться хотя бы несколько раз (прервать его
работу можно разными способами но их мы обсудим позже). А на что же ссылаться?
Тут – то и нужны стоящие перед строками цифры 10,20,30 и т.д. По десяткам числа
возрастают т.к. если вы напишите программу пронумеровав строки 1,2,3 и т.д. а
потом захотите вставить строку, придется изменить нумерацию и у других строк (а
если это крупная программа строк так на 300?). Имея же нумерацию 10,20,30 вы
сможете раздвинуть строки и вставить строку, например под номером 22.
10
INPUT “Введите А и B” A, B
20 С = A+B
30 END
Здесь нарочно пропущена строка PRINT C. И мы её легко вставим
10
INPUT “Введите А и B” A, B
20 С = A+B
21 PRINT C
30 END
Но вернёмся непосредственно к GOTO(писать его можно как угодно GOTO, goto). Ссылаться можно на любую строку, в нашем
случае строку №10 (чтобы снова ввести числа и т.д.)
10
INPUT “Введите А и B” A, B
20 С = A+B
21 PRINT C
22 GOTO 10
30 END
Хочется ещё раз подчеркнуть что программа
будет выполняться бесконечно (по крайней мере пока будут вводиться именно
числа).
</Pre>
</body>
</html>
1.5. Проверка условий в программе
проверка условий в программе осуществляется
следующим образом:
IF THEN
первая группа операторов
ELSE
вторая группа операторов
END IF
Рассмотрим пример. Вернёмся к главе 1.4. где
говорилось что программа
10 INPUT “Введите А и B”, A, B
20 С = A+B
21 PRINT C
22 GOTO 10
30 END
будет работать пока пользователь вводит числа (это
не значит, что если он ничего не вводит выполнение прекратиться, просто введя
что – ни будь, что программа не сможет просуммировать скорее всего выйдет
сообщение об ошибке, и произойдёт аварийное выключение программы.) С помощью
проверки условий можно написать небольшую вставку в программу:
IF A = “Exit” THEN
GOTO 30 // строка №30 – END(прекратить
работу программы)
ELSE
GOTO 20
END IF
Так же можно одну из форм IF…THEN…ELSE:
IF
условие_1 THEN
операторы_1
ELSEIF условие_2 THEN
операторы_2
ELSEIF условие_3 THEN
операторы_3
ELSEIF условие_4 THEN
операторы_4
….
ELSE
операторы
END IF
Рассмотрим пример:
10 PRINT “Деление чисел”
20 INPUT “Введите делимое и делитель”, А, B
30 IF B=0
THEN
40 PRINT “На ноль делить нельзя”
50 GOTO 20
60 ELSEIF A=B THEN
70 PRINT “Частное равно 1”
80 GOTO 20
90 ELSEIF A=”EXIT” THEN
100 GOTO 130
110 ELSE
120 C=A/B
140 END IF
150 PRINT C
160 END
Здесь после ввода, проводится проверка условий. Если
0, то программа сразу сообщит о невозможности выполнения действия деления, и вы
вернётесь к этапу ввода чисел и т.д.
1.6.
NOT, AND, OR
Бегло рассмотрим NOT, AND, OR. NOT(x<=0) – употребляется (в данном случае), чтобы дать понять, что x не
меньше либо равно 0. AND – и, например NOT(X<=0 AND
-100<=x ). Здесь x не
принадлежит отрезку от –100 до 0. OR – или. Например:
IF A=0 OR A=3 THEN
PRINT “….”
…..
ELSE
….
END IF
2.1. Графические возможности QBasic
Начнём с графических режимов, их 7:
Режим
Разрешение экрана
Количество цветов
1 320*200 4
2 640*200 2
7 320*200 16
8 640*200 16
9 640*350 16
12 640*480 16
13 320*200 256
Устанавливается режим с помощью зарезервированного
слова SCREEN №режима. Каждая точка экрана имеет свои координаты.
Например верхний левый угол имеет координаты (0,0), а правый нижний (319, 199)-
для режима семь. Для режима 9- (639, 349).
Движение осуществляется по координатной плоскости. Цвета устанавливаются с помощью цифр:
0 – чёрный 8 – тёмно серый
1 – синий 9 – голубой
2 – тёмно – зелёный 10 – ярко - зелёный
3 – салатовый 11 – ярко - салатовый
4 – тёмно – красный 12 – ярко - красный
5 – тёмно – вишневый 13 – ярко - вишнёвый
6 – коричневый 14 - желтый
7 – светло серый 15 - белый
Вернуться на главную страницу.