- •Раздел 2 Программирование на языке
- •Лабораторная работа № 1
- •1 Порядок решения задач на компьютере
- •2 Разработка линейных программ
- •Input "Ввести d, k,n"; d, k,n
- •3 Операторы read, datа, restore
- •3 Запуск qbasic, ввод и редактирование программ
- •Лабораторная работа № 2
- •2 Программы ветвления
- •Input X
- •Лабораторная работа № 3
- •1 Операторы цикла qb
- •2 Примеры программ с циклами
- •3 Контрольные вопросы
- •4 Задание
- •Лабораторная работа № 4
- •1 Программа вычисления арифметического ряда
- •2 Программы вычисления факториалов
- •3 Алгоритм итерационного цикла
- •4 Контрольные вопросы
- •5 Задания
- •Лабораторная работа № 5
- •1 Программа "цикл в цикле"
- •2 Программа "цикл и ветвление"
- •3 Программа "цикл в цикле и ветвление"
- •4 Контрольные вопросы
- •5 Задания
- •Лабораторная работа № 6
- •1 Одномерные массивы - векторы
- •2 Двумерные массивы – матрицы. Обработка массивов
- •3 Контрольные вопросы
- •4 Задания
- •Лабораторная работа № 7
- •1 Функции пользователя
- •3 Процедуры. Операторы sub и end sub
- •Лабораторная работа № 8
- •1 Графические операторы qbasic
- •2 Программа рисования графических объектов
- •3 Построение графиков функций
- •4 Контрольные вопросы
- •5 Задание
Input "Ввести d, k,n"; d, k,n
Встретив оператор INPUT, среда QB печатает соответственно знак вопроса"?" или Ввести d, k,N? И ждёт ввода значений этих переменных через запятую, например 5, 2.2, 3Е-2.
Оператор INPUT применяется, если значение переменной может изменяться при каждом новом запуске программы.
3 Операторы read, datа, restore
Они организуют блок данных, считываемых в ходе выполнения программы, имеют формат:
READ <список переменных >
DATA <список констант >
RESTORE
Списки вводятся через ",".
Перед выполнением программы QB просматривает все операторы DATA и создаёт объединённый блок данных, в котором содержатся все
данные из всех операторов DATA. При встрече первого оператора READ его переменным последовательно присваиваются значения из блока данных, следующий оператор READ своим переменным присваивает следующие данные из DATA и так далее. Когда данные в DATA закончатся, то следующей переменной READ снова присваивается первое значение из DATA и так далее. Оператор RESTORE возвращает точку считывания на начало оператора DATA, на его первое данное.
Пример:
READ A,B$,C
DATA 3.5,Gruppa,81,15,1.2E+14
READ D,E,F
RESTORE
READ K,H$,G,M
DATA 87,Sigma,1090
Результат выполнения программы:
Первый оператор READ присвоит A = 3.5, B$ = Gruppa, C = 81, второй - присвоит D = 15, E = 1.2Е+14, F = 87, затем RESTORE переведёт точку считывания на начало блока данных и следующий READ присвоит переменным K = 3.5, H$ = Gruppa, G = 81, M = 15.
Операторы вывода
Служат для вывода данных на дисплей. В QB используются операторы
Print <список> и
Print using <список форматов> <список вывода>,
где:
<список форматов> - задаёт звёздочками "*" количество знаков до и после запятой.
Пустой оператор PRINT, без списка, выводит пустую строку.
Вместо слова RRINT можно вводит знак вопроса "?", при нажатии клавиши [Enter] он заменится на PRINT автоматически.
Строка вывода символов состоит из 5 зон по 14 позиций в каждой, т.е. для каждого элемента в строке отведено 14 позиций. Шестой элемент выводится в первой позиции новой строки.
Пример:
Print А : Print "А=";А
Print "А+В="; А+В
Print using "**.*"; А,В,С
При А = 3,54 , В = 4, 02 и С = 24,152 на экран выйдет:
3.54 А=3.54
А+В=7.56
3.5 4.0 24.1
Разделительные знаки
знак ":" является разделителем операторов, он действует так, как будто оператор за двоеточием записан с новой строки;
знак "." – десятичная запятая;
знаки "," и ";" – разделители для любых целей;
кавычки "" – вывод текста, заключённого между кавычками,
апостроф "'" – вывод комментария;
круглые скобки "(,)" – аргумент стандартных функций;
квадратные скобки"[,]" – аргумент массивов
Составим программу по алгоритму задачи 1 (рис. 3)
CLS ' оператор clear screen – очистка экрана
а=2.15 : b=1 ' присвоение переменным а и b их значений
INPUT x ' ввод значения переменной х
у = a*x^2– b*cos(x+PI*34/180) ' вычисление значения функции у
print "y=";y ' вывод значения у на дисплей с текстом "у="
END ' конец программы
Рисунок 3 Линейная программа с оператором ввода INPUT и
операторами присваивания
В программе для ввода использованы операторы присваивания а=2.15, b = 1 и оператор ввода данных INPUT x.
Если входных данных много и требуется их повторное считывание, то вместо операторов присваивания удобнее применять операторы READ, DATА, RESTORE. В данном случае повторное считывание не требуется, поэтому составим ту же программу с использованием только операторов READ и DATA (рис. 4).
CLS ' очистка экрана
DATA 2.15, 1 ' ввод значений блока данных
READ a,b ' присвоение a и b их значений из блока DATA
INPUT x ' ввод значения переменной х
у = a*x^2– b*cos(x+PI*34/180) ' вычисление значения функции у
print "y=";y ' вывод значения у на дисплей с текстом "у="
END ' конец программы
Рисунок 4 Линейная программа с операторами
ввода INPUT, READ и DATA