Первый вопрос: "Эта монета настоящая?" Второй вопрос: "Твой сосед - хитрец?" И только после второго ответа начинаем мыслить. - Если на второй вопрос ответ "да", то ответчик не лжец (потому, что тогда ответ правдив). Значит, или он хитрец, который соврал отвечая на второй вопрос, или он правдивец. В обоих случаях, ответ на первый вопрос - правда. - Если на второй вопрос ответ "нет", то ответчик не правдивец (так как это была бы ложь). Значит, он или лжец или хитрец, ответивший правду. Значит, ответ на первый вопрос - ложь.- То есть, если ответ на второй вопрос "да", то монета настоящая, а если ответ "нет", то фальшивая.
A: array [1..120] of real;
i, res: integer;
begin
randomize();
res := 0;
for i := 1 to 120 do
begin
A[i] := random(101);
writeln('A[', i, '] => ', A[i]);
end;
writeln();
for i := 1 to 120 do
if abs(A[i]) > 17 then
inc(res);
writeln(res);
end.
var
C: array [1..20] of integer;
i, res: integer;
begin
randomize();
res := 0;
for i := 1 to 20 do
begin
C[i] := random(101);
writeln('C[', i, '] => ', C[i]);
end;
writeln();
for i := 1 to 20 do
if C[i] mod 2 = 1 then
C[i] := -1 * C[i];
writeln('New array:');
for i := 1 to 20 do
begin
writeln('C[', i, '] => ', C[i]);
end;
end.
И только после второго ответа начинаем мыслить.
- Если на второй вопрос ответ "да", то ответчик не лжец (потому, что тогда ответ правдив). Значит, или он хитрец, который соврал отвечая на второй вопрос, или он правдивец. В обоих случаях, ответ на первый вопрос - правда. - Если на второй вопрос ответ "нет", то ответчик не правдивец (так как это была бы ложь). Значит, он или лжец или хитрец, ответивший правду. Значит, ответ на первый вопрос - ложь.- То есть, если ответ на второй вопрос "да", то монета настоящая, а если ответ "нет", то фальшивая.