2 маленьких несложных задания в 1 строку - Free Pascal
Формулировка задачи:
Ув., столкнулся с проблемой: не могу решить 2 оставшихся примера. Знаю,что решение каждого в 1 строчку, но все,что я пробовал - было неверно.
Помогите пожалуйста, кто знает:
№1. a и b - логические переменные. Выражение, эквивалентное (a > b)=a записанное с использованием только логических операций, на Паскале имеет вид...
№2. Оператор присваивания логической переменной t значения выражения "среди чисел x,y,z имеется только два равных" имеет вид...
п.с. я пробовал в 1 писать так: a xor b = a, вроде бы верно, если подставить значения: 1>0=1, 0>1=0, но если 1>1=1 - ошибка...
ко 2 я пытался подобным способом: t:=(x and y) xor ( y and z) xor (x and z), но опять же, сработало если бы у нас 2 скобки были верны, только 1 верна, ни 1 , но если все будут верны, то выведет true, а не false
Решение задачи: «2 маленьких несложных задания в 1 строку»
textual
Листинг программы
not (a and b)
Объяснение кода листинга программы
a
иb
- это две переменные, которые должны быть логическими (boolean), т.е. иметь значения true или false.- Операция
and
(логическое И) возвращает true только в том случае, если оба операнда (a
иb
) равны true. - Операция
not
(логическое отрицание) возвращает false, если операнд (a and b
) равен true, и true, если операнд (a and b
) равен false. - Таким образом, выражение
not (a and b)
возвращает true, если хотя бы одно из условий (a
илиb
) равно false. - Если оба условия (
a
иb
) равны true, то выражениеnot (a and b)
вернет false. - Если
a
равно true, аb
равно false, то выражениеnot (a and b)
вернет true. - Если
a
равно false, аb
равно true, то выражениеnot (a and b)
вернет true. - Если оба условия (
a
иb
) равны false, то выражениеnot (a and b)
вернет true.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д