Либо часть про Сашу, либо про Машу ложна (два верных утверждения быть не может). Тогда либо Саша занимается вышиванием, либо Маша - рисованием.
1) Саша занимается вышиванием. Тогда Валя не может заниматься вышиванием, её часть гарантированно ложна. Значит, верно утверждение про Машу: она не занимается рисованием, ей остаются танцы. Получается, Валя занимается рисованием.
2) Маша занимается рисованием. Остается два высказывания: Саша не занимается вышиванием, Валя - занимается вышиванием. Одно из этих утверждений истинно, другое ложно. Но если истинно первое, то обе девочки не занимаются вышиванием, если истинно второе - обе занимаются. Такого быть не может, поэтому Маша не может заниматься рисованием.
var c, a: array[1..20] of integer; i: integer; begin write('Первый массив '); for i := 1 to 20 do begin c[i] := i * (-5); write(c[i], ' '); end; writeln; write('Преобразованный массив '); for i := 1 to 20 do begin a[i] := c[20 - i + 1]; write(a[i], ' '); end; end.
ИЛИ Программа не использующая два массива, а просто переворачивающая первый
var c: array[1..20] of integer; i: integer; begin write('Первый массив '); for i := 1 to 20 do begin c[i] := i * (-5); write(c[i], ' '); end; writeln; write('Преобразованный массив '); for i := 20 downto 1 do write(c[i], ' '); end.
Саша - вышивание, Маша - танцы, Валя - рисование.
Объяснение:
Либо часть про Сашу, либо про Машу ложна (два верных утверждения быть не может). Тогда либо Саша занимается вышиванием, либо Маша - рисованием.
1) Саша занимается вышиванием. Тогда Валя не может заниматься вышиванием, её часть гарантированно ложна. Значит, верно утверждение про Машу: она не занимается рисованием, ей остаются танцы. Получается, Валя занимается рисованием.
2) Маша занимается рисованием. Остается два высказывания: Саша не занимается вышиванием, Валя - занимается вышиванием. Одно из этих утверждений истинно, другое ложно. Но если истинно первое, то обе девочки не занимаются вышиванием, если истинно второе - обе занимаются. Такого быть не может, поэтому Маша не может заниматься рисованием.
var
c, a: array[1..20] of integer;
i: integer;
begin
write('Первый массив ');
for i := 1 to 20 do begin
c[i] := i * (-5);
write(c[i], ' ');
end;
writeln;
write('Преобразованный массив ');
for i := 1 to 20 do begin
a[i] := c[20 - i + 1];
write(a[i], ' ');
end;
end.
ИЛИ Программа не использующая два массива, а просто переворачивающая первый
var
c: array[1..20] of integer;
i: integer;
begin write('Первый массив ');
for i := 1 to 20 do begin
c[i] := i * (-5);
write(c[i], ' ');
end;
writeln;
write('Преобразованный массив ');
for i := 20 downto 1 do write(c[i], ' ');
end.
Обе программы работают!