Организация цикла
Управление ходом выполнения программы
Лекция 7
Оператор позиционирования курсора LOCATE
Оператор форматированного вывода
ФАМИЛИЯ ИМЯ
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
Функции SPC и TAB
A (15) (29)
AA A-1 1 1
Используются для вывода на экран (на печать) данных в удобной форме.
SPC(X) – число Х пробелов (1≤X≤80)
Пример:
PRINT “Иванов”; SPC(5); “студент”
На экран с первой позиции будет выведено:
Иванов студент.
ТАВ: PRINT TAB (выражение1); выражение2
(Выражение1) определяет положение значения (выражения2) при печати, относительно начала строки. Если значение (Выражение1) имеет дробную часть, то дробная часть отбрасывается. Значение (Выражение1) должно быть в диапазоне 0 – 79, определяющем номера позиций строки экрана.
Пример:
PRINT “ФАМИЛИЯ”; TAB (20); “ИМЯ”
Функцию TAB(), например, можно использовать для вывода результатов вычислений в виде графиков относительно начала строки. Так, если табулируется у и определяются его мах и мin, то, по значениям А = 75*(у – мin)/(мах – мin) + 1, можно оператором PRINT TAB(А); “*” построить вертикально расположенный график зависимости функции у от аргумента.
Синтаксис:
PRINT USING формат; список выражений [{;|,}]
“Формат” – текстовое выражение, содержащее один или более спецификаторов формата.
Спецификаторы формата для числовых данных:
#- позиция цифры,
.- позиция десятичной точки,
+- позиция знака числа,
,- разделение каждых трех разрядов с помощью запятой,
$- знак доллара перед числом.
Пример:
A=1234.567
PRINT USING “####”; A 1234
PRINT USING “####.#”; A 1234.5
PRINT USING “####.##”; A 1234.56
PRINT USING “###.###”; A %1234.567
В последней строке символ % свидетельствует о несоответствии заданного формата фактическому значению переменной.
Спецификаторы формата для символьных данных:
&- вывод всего текстового значения,
!- вывод первого символа текстового значения,
\\- число выводимых символов.
Пример:
A=”Студент”
PRINT USING “&”; A Студент
PRINT USING “!”; A С
PRINT USING “\\\”; A Сту
В одном операторе PRINT USING применение и символьных, и числовых переменных не допускается.
Синтаксис:
LOCATE [<строка>],[<колонка>],[<курсор>]
<строка> -значение из диапазона 1..24
<колонка> -значение из диапазона 1..80
<курсор> - 1(курсор виден) или0(курсор невиден)
<строка>,<колонка>могут быть числовыми выражениями.
Оператор позиционирования курсора удобен для наглядности вывода информации на экран. С его помощью информация выводится в необходимое место на экране, что является очень удобным для пояснения, например, при выводе графиков функций. Оператор удобно использовать в цикле, например, для рисования таблиц элементами псевдографики.
Часто при выполнении программы возникает необходимость многократного выполнения блока операторов при различных начальных условиях. Простейший способ повторить действия блока программы – вернуться в начало блока и выполнить его еще раз. QBASIC содержит несколько операторов, позволяющих сделать это.
Оператор цикла FOR … NEXT
FOR <счетчик> = <начало> TO <конец> [STEP <приращение>]
[блок операторов]
NEXT [счетчик]
[счетчик]- числовая переменная (переменная цикла),
<начало> , <конец>- начальное и конечное значение счетчика,
<приращение>- приращение счетчика при каждом шаге цикла.
Если приращение равно 1, то выражение в квадратных скобках может быть опущено. То есть по умолчанию шаг изменения переменной цикла равен единице.
Пример:
FOR I = 1 TO 15 FOR I = 7 to -6 STEP -3
PRINT I PRINT I