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

Логический оператор and

Приведём пример:

PRINT 2<3 AND 7>2

Ответ будет –1, так как оба неравенства верны.

PRINT 2<3 AND 7<2

Ответ будет 0, так как одно из неравенств неверно.

Для оператора AND можно составить таблицу значений:

Условие 1 Условие 2 Условие 1 AND Условие 2

Верное Верное Верное

Неверное Верное Неверное

Верное Неверное Неверное

Неверное Неверное Неверное

Отсюда видно, что оператор AND даёт верное значение только в том случае, если оба условия верны.

Логический оператор or

Рассмотрим следующую программу:

CLS

PRINT 2 < 3 OR 4 < 7

PRINT 2 > 3 OR 4 < 7

PRINT 2 < 3 OR 4 > 7

PRINT 2 > 2 OR 4 > 7

Для оператора OR верна следующая таблица значений:

Условие 1 Условие 2 Условие 1 OR Условие 2

Верное Верное Верное

Неверное Верное Верное

Верное Неверное Верное

Неверное Неверное Неверное

Оператор OR даёт верное значение тогда, когда по крайней мере одно из условий верное.

Логический оператор not

Оператор NOT делает значение условия противоположным. Он используется только с одним условием.

Например,

PRINT NOT 2 < 3´Значение неверное - 0

PRINT NOT 2 > 3 ´Значение верное - -1

Другие логические операторы xor, eqv, imp

XOR- даёт верное значение только в том случае, если оба условия разные (т.е. одно верное, одно нет).tõese tulemuse saab üksnes siis, kui mõlemad tingimused korraga on erinevad (üks tõene ja teine väär).

EQV- даёт верное значение только в том случае, если оба условия одинаковые (т.е. оба верные или оба нет).

IMP- даёт неверное значение только в том случае, если первое условие неверное, а второе – верное.

7. Оператор условного перехода

При решении задач в которых действие зависит от условия, используется оператор условного перехода. Он имеет вид:

Оператор if.(условие)..Then.(оператор)..Else..(оператор).

Пример:

INPUT “Как твоё имя? “; A$

IF A$=”Маша “ THEN PRINT “Привет, Маша“ ELSE PRINT “Привет “; A$

PRINT "Эта программа делит два числа"

INPUT "Введи делимое"; a

INPUT " Введи делитель"; b

IF b=0 THEN

BEEP 'этот оператор даёт гудок

PRINT "Деление на 0 невозможно!"

ELSE

PRINT "Частное от деления равно"; a/b

END IF

Здесь в первой программе используется условный оператор в сокращённом виде (он должен размещатся на одной строке), а во второй – используется несколько операторов после THEN. В этом случае делается запись в виде «лестницы» для удобства чтения программы и заканчивается блок оператором END IF

Оператор после ELSE может не ставится. Например,

PRINT "Введи число 1-10";

INPUT A

IF A>10 OR A<1 THEN

BEEP

PRINT "Это число не принадлежит этому промежутку!"

END IF

Условный оператор может быть и ещё более сложного вида:

IF условие 1 THEN

Операторы 1

ELSE IF условие 2 THEN

Операторы 2

ELSE IF условие 3 ТHEN

Операторы 3

ELSE IF условие N THEN

Операторы N

ELSE

операторы

END IF

В этом случае при выполнении условия 1 действуют операторы 1, при выполнении условия 2 – операторы 2 и т. д. Если ни одно из условий не выполняется действуют операторы, находящиеся после оператора ELSE.