Структуры на языке QuickBASIC
Линейная программа должна состоять из следующих операторов (см. рис. 2.1): ввода данных, присваивания, вывода (печать) результатов расчета. Линейный вычислительный процесс сводится к последовательным вычислениям арифметических выражений, причем последовательность вычислений полностью соответствует порядку записи математических зависимостей в постановке задачи.
Оператор-комментарий. Для облегчения восприятия и большей наглядности программы в нее целесообразно включать комментарии, которые поясняют работу отдельных частей программы, характеризуют используемые переменные и т.д.
Для записи комментариев используется оператор REM (REMARK). В этом операторе за словом REM могут быть записаны любые символы QuickBASICа. Включение операторов REM в программу никак не влияет на ее выполнение.
Оператор ввода служит для задания исходных данных при выполнении программы. Операторы вывода позволяют получить результаты выполнения программы.
Ввод осуществляется одним из двух способов:
- c использованием оператора INPUT;
- c использованием пары операторов DATA, READ.
Оператор INPUT. При использовании оператора INPUT данные вводятся с клавиатуры дисплея во время выполнения программы. Общий вид оператора
INPUT <список переменных>
Например.
INPUT a, b, c1
Операторы DATA, READ. Оператор READ имеет вид
READ <список переменных>
Например.
READ a, b, c1
Оператор DATA имеет вид
DATA <список констант>.
Например.
DATA 1.6, -8, 1Е-3
Оператор DATA содержит данные, которые при выполнении операторов READ будут вводиться в переменные, перечисленные в списке ввода операторов READ.
Оператор RESTORE. Данные из области DATA можно считывать, повторно используя, оператор RESTORE.
Общий вид оператора
RESTORE <арифметическое выражение>.
Значение целой части арифметического выражения определяет номер данного, с которого начнется повторное считывание. Если арифметическое выражение отсутствует, осуществляется возврат к началу списка.
Пример.
DATA 10.6, 0.1, 15, 1.2
READ A, B, C, D
RESTORE
READ E, F
. . . . . . .
Оператор PRINT. Используется для вывода на экран дисплея результатов вычислений. Общий вид оператора
PRINT <список>
Список вывода может содержать имена переменных, числа, арифметические выражения и тексты. Если в списке вывода содержатся арифметические выражения, то они сначала вычисляются, а затем выводятся вычисленные значения.
Для удобства восприятия выводимых результатов экран условно разделен на 5 зон, по 14 позиций каждая, и вывод каждого следующего данного осуществляется в следующую зону. Такая форма вывода обеспечивается использованием “ , “ (запятой) в качестве разделителя в списке вывода. Такой способ вывода с использованием в качестве разделителя запятой называется выводом в зонном формате.
Если в качестве разделителя используется “ ; “, то вывод осуществляется в так называемом плотном формате, т.е. каждое следующее данное выводится после предыдущего через пробел.
Оператор присваивания. Оператор присваивания служит для присваивания переменной значения арифметического выражения и имеет вид
LET V = <арифметическое выражение>
(LET можно опустить), где V - переменная, которой присваивается значение.
При выполнении оператора присваивания вычисляется выражение в правой части и присваивается переменной в левой части V.
Оператор END. Оператор END указывает на физический конец программы. При выполнении оператора END закрываются все открытые файлы и останавливается выполнение программы.
Пример 1. Вычислить значение функции
,
где , , m - номер варианта, n - номер группы.
Рис. 2.1. Блок - схема линейного вычислительного процесса
QuickBASIC - программа для примера 1 (см. блок – схему линейного вычислительного процесса на рис. 2.1.):
REM LR-1-1, m=13, n=5
INPUT "M,N"; M,N
X=EXP(-(N/M)^(1/2))
T=LOG(M/SQR(N))+7.21
Y=(COS(X^2-SQR(T))+SIN(X-T^(1/3)))/(SIN(T-X^(1/4))^2)+1.731)
PRINT X, T, Y
END
После ввода текста программы в память ЭВМ для ее запуска нужно выбрать меню RUN и в нем команду START или Shift+F5. На экране появится текст M,N? - после чего нужно ввести значения M,N и нажать "Enter". После этого ЭВМ напечатает на экране значения X, T, Y.