Логические выражения, так же, как и математические состоят из операций и операндов. Для записи лог. операций используются след. знаки: < (меньше); > (больше); = (равно); <> (не равно); >= (больше или равно); <= (меньше или равно); Примеры: c<b; a<>b; c>d; Объектов, над которыми совершаются логические операции a<=0; a+2 >= d-c; Логические выражения могут принимать только 2 значения: «Да» - «Нет» (или «Истина» - «Ложь»). Для записи сложных лог. выражений в Паскале определены след. логические операции: AND- логическое «и»; OR - логическое «или»; NOT - логическое «не»; Задание Запись на языке Паскаль x принадлежит интервалу [a,b]. (x>=a) AND (x<=b) x не принадлежит интервалу [a,b]. (x<a) OR (x>b) Должны быть истинными обе составные части Достаточна истинность одной из составных частей Составным оператором называется последовательность произвольных операторов программы, заключенная в операторные скобки begin … end. begin оператор 1; … оператор n; end; IF логическое выражение THEN оператор1 ELSE оператор2; Сначала вычисляется значение логического выражения. Если результат ИСТИНА, то выполняется оператор1, а оператор2 пропускается. Если результат есть ЛОЖЬ, то выполняется оператор2, а оператор1 пропускается. Операторы 1 и 2 могут быть простыми и составными. IF T> = 100 THEN WRITE (‘ПАР’) ELSE WRITE (‘ВОДА’); Y= X , если X>=1 | X | , если X< 1 IF X > = 1 THEN Y:=X ELSE Y:=ABS(X); В компьютер вводится число а – дальность выстрела. Если оно находится в интервале от 28 до 36, то напечатать текст ПОПАЛ, иначе – НЕ ПОПАЛ. If ( а >28) and (а< 36) then WriteLn (‘ПОПАЛ’) else WriteLn (‘НЕ ПОПАЛ’); Начало Определить минимальное значение для двух различных целых чисел x, y. x, y Min:=x Var x, y, min : integer; Begin Write (‘Ввод x и y = ’); ReadLn (x,y); If x<y then min:=x else min:=y; WriteLn (‘min = ’,min) End. x<y Min Конец Min:=y В прихожей у принцессы – длинная очередь женихов. Принцессе нравятся только голубоглазые юноши маленького роста. Написать для принцессы программу, которая печатает Вы подходите тем, у кого цвет глаз голубой, и рост меньше 150 см. Остальным программа говорит До свидания!. VAR rost : integer; {Рост} tsvet: string; {Цвет} BEGIN WriteLn (‘Каков цвет Ваших глаз? ’); ReadLn (tsvet); WriteLn (‘Введите Ваш рост в сантиметрах ’); ReadLn (rost); If (tsvet =‘голубой’) AND (rost<150) then WriteLn (‘Вы подходите!’) else WriteLn (‘До свидания!’); END. ax2 + bx + c = 0 {Программа вычисления корней квадратного уравнения} VAR A, B, C, D, X1, X2: real; BEGIN WriteLn (‘введите коэффициенты A,B,C квадратного ур-я’); ReadLn (A,B,C); D:= B*B - 4*A*C; If D < 0 THEN WriteLn (‘Корней нет’) ELSE begin X1:=(-B+SQRT(D))/(2*A); X2:=(-B-SQRT(D))/(2*A); WriteLn (‘X1=’,X1:8:3,’X2=’, X2:8:3) end END. CASE N OF k1, …, kn: оператор А; ... m1, …, mn: оператор P; ELSE оператор S END; Оператор выбора CASE . Переменная N - ключ выбора (селектор). k1, …, kn … m1, …, mn – списки констант выбора. В процессе исполнения оператора CASE по очереди сравнивается значение переменной N с константами из списков выбора. Если N = k1, то выполняется оператор А, если N = m2, то выполняется оператор P, и т.д. Затем исполнение оператора CASE завершается. Если же совпадающего значения так и не нашлось, то выполняется оператор S, стоящий после слова ELSE . VAR Otmetka: integer; BEGIN WriteLn (‘Какую отметку ты получил по физике?’); ReadLn (Otmetka); CASE otmetka OF {Перевод: в случае если отметка равна…} 1,2: WriteLn (‘Кошмар!’); 3: WriteLn (‘Неважно!’); 4: WriteLn (‘Неплохо!’); 5: WriteLn (‘Молодец!’); ELSE WriteLn (‘Таких отметок не бывает!’) END {Конец оператора CASE} END. Дана функция x 3 2 x 4 2 Рассчитать ее значение, если подкоренное выражение неотрицательно и знаменатель не равен 0. В этих случаях на экране предусмотреть соответствующее сообщение. Неразборчивой принцессе нравятся все маленькие юноши независимо от цвета глаз и все голубоглазые независимо от роста. Написать для принцессы программу, которая печатает Вы подходите тем, у кого цвет глаз голубой или рост меньше 150 см. Остальным программа говорит До свидания!. Проанализировав возраст человека, напечатать кто он: а) ребенок, если ему меньше 7 лет; б) школьник, если ему от 7 до 16 лет (включительно); в) студент, если ему больше 16 , но меньше 22 лет; г) взрослый человек – от 22 и старше. . Написать программу, которая в зависимости от ответа пользователя на заданный вопрос: «Чем займемся – сложением или возведением в квадрат?», выполняла указанное действие. Написать программу, которая по введенной дате некоторого месяца выдает сообщение о соответствующем ей дне недели. Календарь месяца: Пн 7 14 21 28 Вт 1 8 15 22 29 Ср 2 9 16 23 30 Чт 3 10 17 24 31 Пт 4 11 18 25 Сб 5 12 19 26 Вс 6 13 20 27 Определить, попадает ли точка A(x,y) в заштрихованные области: 2 3 2 1 1 3 2 A 1 sin ( A 2 ) F sin A 2 A cos 2 ( A) A3 F CB F F 1,5 C 2 10 , при А=25 , при А=10, В=7, С=12. 2,5 10 A B A SIN (2 A) COS 2 A B C A2 B 2 C 2 , при А=2, В=1, С=3 ( X 2 Y 2 ) 10 X 2 Y 2 (X Y ) 2 2 2 2 , при X=3, Y=-5