- •Среда программирования qbasic
- •Язык программирования qbasic
- •Типы данных
- •Виды данных
- •Имя константы (в неявном виде) или переменной
- •Оператор const
- •Оператор dim
- •Оператор присвоения значений переменным
- •Стандартные функции
- •Выражения
- •Арифметические выражения
- •Логические выражения
- •Операции сравнения
- •Логическое отрицание
- •Логическое умножение
- •Логическое сложение
- •Логическое равенство
- •Строковые выражения
- •Структура программ
- •Оператор ввода из памяти (read – data)
- •Вывод на экран (print) и принтер (lprint) Вывод данных на экран
- •Форматированный вывод на экран (print using) и принтер (lprint using)
- •Символы для вывода чисел
- •Алгоритмы
- •Действие 2
- •Операторы передачи управления по вычислению
- •Оператор условного перехода if then
- •Пример решения задач iia и iiб
- •Оператор выбора select case
- •Алгоритмы циклической структуры
- •Операторы цикла while – wend (цикл ‘’пока’’)
- •Операторы цикла do – loop
- •Операторы цикла for – next (цикл со счетчиком)
- •Итерационные циклы
- •Итерационные циклы с применением рекурентной формулы
- •Массивы в qbasic
- •Объявление массива
- •Действия с массивами
- •Функции и процедуры, определяемые пользователем (собственные)
- •Функция пользователя function
- •Объявление функции пользователя
- •Собственная процедура (подпрограмма) sub
- •Объявление подпрограммы пользователя
- •Формальные параметры делятся на 2 группы:
- •Операторы для работы с файлами
- •По принципу организации файлы подразделяются на:
- •Обработка файла состоит из следующих операций:
- •Создание дискового файла
- •Вывод данных в файл
- •Закрытие дискового файла
- •Ввод данных из файла в программу
- •Input # н.Ф., список
- •Функции, используемые при работе с файлами
- •Графические возможности qbasic
- •Выбор графического режима
- •Выбор цвета
- •Выбор окна выведения
- •Вывод точки на экран и ее удаление
- •Построение линии и прямоугольника
- •Построение эллипса (окружности)
- •Закрашивание замкнутых областей
- •Задание II Алгоритм разветвляющейся структуры задача iiа
- •Задача II б
- •Задание III алгоритм циклической структуры задача III а Табулирование функции
- •Задача III б Вычисление суммы (произведения)
- •Задание IV Алгоритм комбинированной структуры
- •Вариант решения (использование функции пользователя)
- •Вариант решения (использование подпрограммы пользователя)
Операторы передачи управления по вычислению
Формат оператора
ON а.в. GOTO m1 [, m2 [ , … ] ]
а.в. – арифметическое выражение округляется до целого значения от 0 до 255.
Действие оператора состоит в вычислении числового выражения, выборе метки, порядковый номер которой равен вычисленному значению, и передаче управления в соответствующее место программы.
Если значение а.в. равно 0 или превосходит число меток в списке, то управление передается следующему оператору.
Фрагмент программы |
Исходные данные |
Результат выполнения программы |
INPUT С ON C GOTO F1, F2 K = 1: GOTO F3 F1: K=2: GOTO F3 F2: K=3 F3: PRINT “К=”; K |
при С = 0 или при С > 2 |
K= 1 |
при С = 1 |
K= 2 | |
при С = 2 |
K= 3 |
Оператор условного перехода if then
Оператор IF THEN [ELSE] позволяет изменить последовательность выполнения программы в зависимости от некоторого условия.
Формат оператора
IF л.в. THEN
оператор 1.1
. . .
[оператор 1.n]
[ EXIT IF ]
[ ELSE
[ оператор 2.1
. . .
[ оператор 2.m ]]]
END IF
Операторный блок IF состоит из THEN - ветви с операторами 1.1 ... 1.n и ELSE – ветви с операторами 2.1 ... 2.m.
Если л.в. – ''истина'', то выполняется THEN – ветвь, в противном случае - ELSE– ветвь. Затем работа продолжается с оператора, следующего за END IF (если ход работы не изменяется операторами EXIT IF или GOTO).
Если л.в. – ''ложь'', но ELSE отсутствует, то выполняется оператор, следующий за END IF.
Фрагмент программы |
Исходные данные |
Результат выполнения программы |
INPUT ''Ввод А, В''; А, В IF А = В THEN PRINT “ 1 ветвь А = В” ELSE IF А < В THEN PRINT “ 2 ветвь А < В ” ELSE PRINT “3 ветвь А > В” END IF END IF |
при А = 2 В = 3 |
2 ветвь А < В |
при А = 5 В = 5 |
1 ветвь А = В | |
при А = 10 В = 7 |
3 ветвь А > В |
Пример решения задач iia и iiб
Задача
IIA
REM алг. разветвляющейся стр. II А
DIM A, M, N, R, X, C
INPUT “ A, M, N”; A, M, N
X = (A+M) / N
C
IF C < > 0 THEN
R = LOG( C ) / LOG( 5 )
PRINT “R=” ; R
ELSE
PRINT “решения нет”
END IF
END
Задача IIБ Вычислить значение функции
при -2 < x ≤ 5
y = x > 5
0 x ≤ -2
REM алг. разветвляющейся стр. II
DIM A, X, Y
INPUT “ A, X,”; A, X
IF X >= -2 AND X < 5 THEN
Y = TAN ( A * X)
ELSE
IF X > 5 THEN
Y = SIN(2*X) ^ 2
ELSE
Y = 0
END IF
END IF
PRINT “Y =” ; Y
END