- •Интегрированная среда qbasic Запуск и завершение qbasic
- •Главное меню qbasic
- •Встроенный справочник qbasic
- •Формальные сведения о qbasic Алфавит qbasic
- •Д Данные Переменные анные в языке qbasic
- •Длинная целая –2147483647 до 2147483648 (&)
- •Переменные
- •Переменные
- •Defint X-X (целые числа, inTeger)
- •Константы
- •Выражения в языке qbasic
- •Арифметические выражения
- •Условные выражения
- •Логические выражения
- •Символьные выражения
- •Встроенные функции
- •Input "Сообщение", список переменных
- •Оператор вывода данных
- •Статический ввод данных
- •Команды управления ходом выполнения программы
- •Безусловная передача управления
- •Условная передача управления
- •Формат записи вложенных условных операторов
- •Множественный выбор (select case)
- •Работа с датой и временем
- •Цикл со счетчиком (for…next)
- •Цикл while … wend
- •Вложенные циклы
- •Массивы
- •Одномерные массивы
- •Определение массивов
- •Заполнение массива
- •Порядок работы с массивами
- •Действия над элементами одномерного массива
- •Двумерные массивы Основные понятия
- •Заполнение массива
- •Действия над элементами двумерного массива
- •Подпрограммы
- •Функции, определяемые пользователем
- •1 Вариант
- •2 Вариант
- •Работа со строковыми типами данных Оператор line input
- •Операции со строковыми данными
- •Функции для работы с текстами
- •Графическая обработка данных
- •Оператор screen
- •Оператор color
- •Операторы pset, preset
- •Прямые линии – отрезки
- •Рисование прямоугольников
- •Оператор circle
- •Оператор paint
- •Вывод текста в графическом режиме
- •Графическое “перо” draw
Работа с датой и временем
Функция DATE$
Выдается текущая дата, зарегистрированная в компьютере. Формат даты: ММ-ДД-ГГГГ.
Например
PRINT DATE$
Выведется текущая дата: 15-09-2000
Функция TIME$
Выдается текущее системное время, зарегистрированное в компьютере. Формат времени: ЧЧ:ММ:СС (часы, минуты, секунды).
Например
PRINT TIME$ , на экране выдается текущее время.
Циклы
В языке BASIC предусмотрено два основных способа организации циклов:
-
повторение блока команд заданное количество (число) раз (цикл со счетчиком);
-
циклическое повторение блока команд, пока выполняется (или не выполняется) некоторое условие.
Цикл со счетчиком (for…next)
Этот оператор используется, когда некоторый блок команд необходимо выполнить заданное число раз.
Формат
FOR счетчик=E1 TO E2 [STEP E3]
Блок команд
NEXT счетчик
счетчик (параметр)- числовая переменная;
E1 - начальное значение счетчика;
E2 - конечное значение счетчика;
E3 - шаг изменения счетчика. По умолчанию этот шаг равен 1;
Блок команд - набор операторов, предназначенных для повторения.
Выполнение. Если E3 >0, то цикл продолжается все время, пока счетчик < или = E2. Если E3 <0, то цикл продолжается все время, пока счетчик > или = E2.
Примеры
-
FOR I=1 TO 5
PRINT I;
NEXT I
Результат: 1 2 3 4 5
Тело цикла будет выполняться 5 раз. Шаг изменения счетчика по умолчанию равен 1.
-
FOR I=1 TO 5 STEP 2
PRINT I;
NEXT I
Результат: 1 3 5
-
Обратный цикл
FOR I=5 TO 1 STEP -1
PRINT I;
NEXT I
Результат: 5 4 3 2 1
-
FOR I=5 TO 1
PRINT I;
NEXT I
Проверка выхода из цикла производится в начале цикла, поэтому цикл не выполнится ни разу.
Ограничения при использовании оператора цикла FOR … NEXT:
-
Не изменяйте значение параметра цикла внутри цикла
FOR I=1 TO 5
I=I+1 ' НЕЛЬЗЯ!
NEXT I
-
Никогда не передавайте управление внутрь цикла, это может привести к непредсказуемым результатам.
GOTO 10 ' НЕЛЬЗЯ!
FOR I=1 TO 5
10 INPUT A
S=S+A
NEXT I
Досрочный выход из цикла
Для цикла FOR предусмотрена возможность безусловного выхода из цикла ( до его завершения). Управление передается команде, следующей за NEXT.
Формат команды выхода:
EXIT FOR
Например
FOR I=1 TO 10
INPUT "Введите значение параметра";F
IF F=100 THEN EXIT FOR
S=S+F
NEXT I
PRINT "Значения "
Подсчет:
-
Сумма
Количество
Произведение
S=0
K=0
P=1
S=S+A
K=K+1
P=P*A
Пример1. Подсчитать сумму 10 значений переменной A.
S=0
FOR I=1 TO 10
INPUT "Введите значение переменной";A
S=S+A 'Подсчет суммы значений переменной A
NEXT I
PRINT "Сумма ="; S
Пример 2. Подсчитать количество положительных чисел и произведение отрицательных чисел из N введенных.
INPUT “Введите количество значений”;N
К=0
P=1
FOR I=1 TO N
INPUT "Введите значение переменной";A
IF A>0 THEN K=K+1
IF A<0 THEN P=P*A
NEXT I
PRINT"Количество положительных чисел =";K
PRINT"Произведение отрицательных чисел =";P
Домашнее задание:
-
Подсчитать сумму положительных элементов, не превышающих значения 10 из N введенных.
-
Подсчитать количество мальчиков, рост которых превышает 165 см и количество девочек, рост которых не превышает 165.
Практическое занятие
Пример 1. Рассчитать и вывести на печать значения функции Y=5/X при изменении аргумента X от -5 до 5 с шагом 2.
FOR X=-5 TO 5 STEP 2
Y= 5/X
PRINT "X=";X, "Y=";Y
NEXT X
Пример 2. Дан ряд чисел 100, 55, -1000, 20, 5, 8, 33, 48. Найти количество пар чисел квадрат разности которых <100.
DATA 100, 55, -1000, 20, 5, 8, 33, 48
K=0
FOR I=1 TO 8 STEP 2
READ A,B
IF (A-B)^2 < 100 THEN K=K+1
NEXT I
PRINT "Количество пар чисел квадрат разности которых <100 =";K
Пример 3. Найти максимальное значение из N введенных. Вывести максимальное значение и его индекс.
INPUT "Введите количество значений";N
INPUT "Введите первое значение";A
MAX=A : IN=1
FOR I=2 TO N
PRINT "Введите "; I; "-ое значение"
INPUT A
IF A>MAX THEN MAX=A : IN=I
NEXT I
PRINT "Максимальное значение =";MAX
PRINT “Индекс максимального значения =”; IN
Домашнее задание:
-
Определить максимальное значение среди положительных элементов из N введенных.
-
Подсчитать значения функции f(x)=1-х2 на заданном интервале [-0,5; 0,5] с шагом 0,1.