Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций по информатике по теме QBasic.doc
Скачиваний:
13
Добавлен:
12.11.2018
Размер:
438.78 Кб
Скачать

Работа с датой и временем

Функция 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.

Примеры

  1. FOR I=1 TO 5

PRINT I;

NEXT I

Результат: 1 2 3 4 5

Тело цикла будет выполняться 5 раз. Шаг изменения счетчика по умолчанию равен 1.

  1. FOR I=1 TO 5 STEP 2

PRINT I;

NEXT I

Результат: 1 3 5

  1. Обратный цикл

FOR I=5 TO 1 STEP -1

PRINT I;

NEXT I

Результат: 5 4 3 2 1

  1. FOR I=5 TO 1

PRINT I;

NEXT I

Проверка выхода из цикла производится в начале цикла, поэтому цикл не выполнится ни разу.

Ограничения при использовании оператора цикла FOR … NEXT:

  1. Не изменяйте значение параметра цикла внутри цикла

FOR I=1 TO 5

I=I+1 ' НЕЛЬЗЯ!

NEXT I

  1. Никогда не передавайте управление внутрь цикла, это может привести к непредсказуемым результатам.

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

Домашнее задание:

  1. Подсчитать сумму положительных элементов, не превышающих значения 10 из N введенных.

  2. Подсчитать количество мальчиков, рост которых превышает 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

Домашнее задание:

  1. Определить максимальное значение среди положительных элементов из N введенных.

  2. Подсчитать значения функции f(x)=1-х2 на заданном интервале [-0,5; 0,5] с шагом 0,1.