Вычисление значений
логических выражений
Костина Наталия
Сергеевна
учитель
информатики
МБОУ «СОШ №12»
НМР РТ
Выражение – это
правило вычисления значения. В выражении участвуют операнды, объединенные
знаками операций. Операндами выражения могут быть константы, переменные и
вызовы функций. Операции выполняются в определенном порядке в соответствии с
приоритетами, как и в математике. Функции, используемые в выражении,
выполняются в первую очередь. Константы и переменные являются частными случаями
выражения.
Приоритеты
логических операций и операций отношения:
1. not;
2. and;
3. or, xor;
4. =, <, >, <>, <=,
>=.
Для изменения
порядка выполнения операций используются круглые скобки, уровень их вложенности
не ограничен.
Результатом
выражения всегда является значение определенного типа, который определяется
типами операндов. Величины, участвующие в выражении, должны быть совместимых
типов.
Значением выражения
логического типа может быть одна из констант: FALSE (ложь), TRUE
(истина). Для них справедливы правила: ord(false)=0; ord(true)=1; false<true;
succ(false)=true; pred(true)=false.
Примеры выражений:
a) t + sin(x)/2*x – результат имеет вещественный тип;
b) a<=b+2 – результат имеет логический тип;
c) (x>0) and (y<0) – результат имеет
логический тип.
Определите
порядок действий в указанных выше выражениях.
Задание 1.
1.
Вычисли
значение выражения (a < d) and (x + a < d) or (c < m) or g, если
a=2,4; d=7,8; c=-17,9;
m=5; g=true; x=18,7.
2.
Записать
приведенные высказывания в виде выражений.
a) a Î (0; 8);
b) a Ï [-1; 6];
c) значение переменной а
принадлежит одному из отрезков [-4; 5], [0; 3], [1,2; 7].
Геометрическое место точек.
Геометрическое
место точек (ГМТ) – фигура речи в математике, употребляемая для определения
геометрической фигуры как множества точек, обладающих некоторым свойством.
Пример 1.
Принадлежит ли точка A(x, y) закрашенной
области, изображенной на рисунке (включая границы)?
Записать выражение, значение которого
зависит от координат точки х и у. Значение выражения равно true, если точка принадлежит закрашенной
области и false, если точка не принадлежит закрашенной
области. Составить программу.
Решение.
Точки, принадлежащие закрашенной
области, обладают следующими свойствами:
1. располагаются внутри
окружности радиуса 1, с центром в начале координат, уравнение которой имеет вид:
х2+у2=1;
2. х>=0;
3.
y>=0.
Программа может
быть составлена так:
program oblast1;
var
x, y: real;
begin
write(‘x=’); readln(x);
write(‘y=’); readln(y);
writeln((x>=0)
and (y>=0) and (sqr(x)+sqr(y)<=1));
readln;
end.
Задание 2: изобразить
в декартовой прямоугольной системе координат область, в которой истинно данное
логическое выражение. Составить программу для определения принадлежности данной
области точки A( x, y ).
1. ( y >= -x + 1 ) and ( y >= x +
1 ) and ( y <=-x - 1) and (y < =x -1) and ( x 2 +y 2
<=1).
2. ( x 2 +y 2
<= 2 ) and ( y >= x ) and ( y >= -x ).
3. ( x >= -1) and ( x <= 0 ) and (
y >= -2 ) and ( y <= -x ) or ( x >= 0 ) and ( x <=1 ) and (
y >= -2) and ( y <= x ).
4. (│y│<=1) and
(│x│<=2).
Задание 3:
написать программу, которая определяет, попадает ли точка с заданными
координатами в область, закрашенную на рисунке серым цветом (включая границы).
Результат работы вывести в виде текстового сообщения.
a) b)
Ответы.
Задание 1.
1. (2,4 < 7,8) and (18,7 + 2,5 <
7,8) or (-17,9 < 5) or true. Значение данного логического выражения – истина.
2. Логические выражения:
a) (0<a) and (a<8);
b) (a<-1) or (a>6);
c) (-4<=a) and (a<=5) or (0<=a)
and (a<=3) or (1,2<=a) and (a<=7).
Задание 2.
1. 2.
3. 4.
Задание 3.
a) program
oblast2;
var
x,y,r:real;
b:boolean;
begin
write('x=');readln(x);
write('y=');readln(y);
write('r=');readln(r);
b:=(sqr(x)+sqr(y)<=sqr(r)) and ((y>=-x) or (y<=x));
if b=true
then writeln('принадлежит')
else writeln('не
принадлежит');
readln;
end.
b)
program
oblast3;
var
x,y,r1,r2:real;
b:boolean;
begin
write('x=');readln(x);
write('y=');readln(y);
write('r1=');readln(r1);
write('r2=');readln(r2);
b:=(sqr(x)+sqr(y)<=sqr(r1)) and (sqr(x)+sqr(y)>=sqr(r2));
if b=true
then writeln('
принадлежит ')
else
writeln('не принадлежит');
readln;
end.
Список используемой
литературы:
1. Павловская Т.А. Паскаль.
Программирование на языке высокого уровня. Учебник для вузов - СПб. Питер,
2004.
2. Васюкова Н.Д., Тюляева В.В.
Практикум по основам программирования. Язык Паскаль: Учеб. Пособие для учащихся
средних специальных заведений, - М.: Высш. шк., 1991.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.