Первая
var n,x:integer;
begin
readln(n);
while n <> 0 do begin
x:=x + n mod 10;
n:=n div 10;
end;
if(x mod 2 = 0) then
writeln('true')
else
writeln('false');
end.
Вторая
var x,z,s:integer;
begin
readln(x);
if (x > 99) and (x < 1000) then begin
s:=x;
while s<>0 do begin
z:=z+s mod 10;
s:=s div 10;
end;
if(x*x) = (z*z*z) then
writeln('true')
else
writeln('false');
end
else
writeln('Число должно быть 3-ех значным!');
end.
Третья
Var a,b,c:Real;
Begin
Writeln('Введите a');
Readln(a);
Writeln('Введите b');
Readln(b);
Writeln('Введите c');
Readln(c);
if (a=b) or (a=c) or (b=c) then
writeln ('true')
else
writeln ('false);
end.
3)не (X и Y) или Z
Объяснение:
1) не (X и Y) и Z
Поскольку тут перед Z стоит операция И, то при Z = 0 всегда будет F = 0, поэтому такая функция исключается.
2) не (X или не Y) или Z
Поскольку тут перед Z стоит операция ИЛИ, то при Z = 1 будет F = 1. Проверим комбинации, где Z = 0.
Для X=0, Y=0 получаем
F = не (0 или не 0)
F = не (0 или 1)
F = не (1)
F = 0
Но в первой строке таблицы стоит 1, поэтому такая функция исключается.
3) не (X и Y) или Z
Здесь по Z рассуждения, как в 2).
Для X=0, Y=0 получаем
F = не (0 и 0)
F = не (0)
F = 1 - первая строка проверку.
Для X=0, Y=1 получаем
F = не (1 и 0)
F = не (0)
F = 1 - последняя строка проверку.
Функция подходит.
4) (X или Y) и Z
Рассуждения, как в случае 1), функция не подходит.