Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
10_программирование.doc
Скачиваний:
8
Добавлен:
09.11.2019
Размер:
1.07 Mб
Скачать

Логические операции

Несколько простых логических выражений можно объединять при помощи логических операций AND (и), OR(или), Xor (исключающее или). Значение полученного в результате логического выражения будет зависеть от значения простых логических выражений, входящих в его состав и от логических операций. Обозначим простые логические выражения буквами A и B, тогда результат выполнения логических операций:

А

В

A and B

A or B

А xor В

False

False

False

False

False

False

True

False

True

True

True

False

False

True

True

True

True

True

True

False

Например: Логическое выражение для проверки принадлежности значения переменной а числовому отрезку от 10 до 100 будет выглядеть:

(a>10) and (a<100) .

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

Записать логические выражения (формулы), истинные при соблюдении следующих условий:

  • точка с координатами X, Y принадлежит первой четверти единичного круга с центром в начале координат;

  • точка с координатами X, Y не принадлежит единичному кругу с центром в начале координат и принадлежит кругу радиусом 2 и с центром в начале координат (изобразите это графически).

Пример Составить программу, по которой выведется значение true, если точка с заданными координатами (х, у) лежит внутри заштрихованной области (рис. 1), и false – в противном случае.

Решение

Рассматриваемая область состоит из двух частей, каждая из которых описывается системой неравенств.

1-я часть: х 0; 2-я часть: х 0 0;

х2 + у2 9; у -х - 3.

х2 + у2 25.

Точка с координатами (х,у) лежит в заштрихованной области, если она принадлежит 1-й или 2-й части.

Программа вводит координаты точки, вычисляет логическое выражение, определяющее принадлежность точки области и выводит полученную логическую величину на экран.

Program Point;

Var

X,Y: real; L: boolean;

Begin

Write ('Введите X:'); Readln (X);

Write ('Введите Y: ' ); Readln (Y);

if (X<=0) and (Sqr(X)+Sqr(Y)<=9) and (Y>= -X-3) or (X>=0) and

(Sqr(X)+Sqr(Y)<=25) then

Writeln (' Точка лежит в заданной области? ') else write(‘no’);

End.

Задачи

  1. Даны три действительные числа. Возвести в квадрат те из них, значения которых неотрицательны, и в четвертую сте­пень — отрицательные.

  2. Даны две точки A(x1 у1) и В(х2, у2). Составить алгоритм, оп­ределяющий, которая из точек находится ближе к началу ко­ординат.

  3. Даны два угла треугольника (в градусах). Определить, суще­ствует ли такой треугольник. Если да, то будет ли он прямо­угольным.

  4. Даны действительные числа х и у, не равные друг другу. Меньшее из этих двух чисел заменить половиной их суммы, а большее — их удвоенным произведением.

  5. Даны длины сторон двух треугольников. Выяснить, являются ли треугольники равновеликими.

  6. Даны целые числа т, п. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить числа нулями.

  7. Имеется четыре( A,B,C,D) произвольных числа. Программа должна ответить на вопрос «Правда ли что среди чисел точно одно меньше нуля. Ответ должен выводиться в виде текста «Правда» или «Неправда»

  8. Д ля данного х вычислить значение функций.

  9. *Формула серной кислоты H2SO4. Сколько молекул серной кислоты Вы можете получить имея N1 атомов водорода, N2 атомов серы и N3 атомов кислорода?.

  10. *Вам известен номер квартиры и количество этажей в доме. Считая, что на лестничной площадке находится по 4 квартиры, определить номер подъезда, в котором находится квартира и номер этажа

  11. *Вычислить значение функции

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]