Классическая задача про рыцарей, лжецов и нормальных людей. Есть шесть высказываний, три пары по два. Следовательно, у нас 6 вариантов развития событий, т.к. каждый из них может быть либо лжецом, либо рыцарем (всегда говорящим правду), либо нормальным (который и так и так). Перейдем к символьным обозначениям. A: A невиновен, С виновен B: С невиновен, A виновен С: С невиновен, B невиновен Для начала, С не может быть лжецом, т.к. в противном случае он бы утверждал, что и В и С виновны. Далее, если С говорит правду, то А виновен, и В придется ему противоречить, т.к. если В лжец, то С виновен, а мы знаем, что виновен А, а если В нормальный, либо А и С виновный, чего быть не может, либо А и С невиновны, что противоречит С. Получаем, что С нормальный. Тогда либо В правда, тогда А виновен, и лжец, и это вызовет противоречие с С (из его слов выходит, что либо В, либо С виновен). Либо А правда, тогда С виновен, и В лжец, что противоречий не вызывает. ответ таков - А сказал правду оба раза, В лжец, а С один раз соврал и один раз сказал правду. И при этом С утаил клад. Тогда можно спокойно отпускать Смита и Джона.
В 3 уравнении если x1=1, то y1 обязательно должен быть равен 1. Если x1=0, значит y1 может быть равен и 1, и 0. Получается, что первому столбцу в цепочке иксов соответствует один набор в цепочке игриков, остальным шести столбцам иксов - семь столбцов игриков. Получается, что количество решений равно 1 + 6*7 = 43
var x,y:integer;
begin
writeln('Введите значение x: ');
readln(x);
if x<0 then
writeln('y = ',x+1)
else
if x>0 then
writeln('y = ',x-2);
end.