// PascalABC.NET 3.0, сборка 1073 const nn=30; mm=30; var a:array[1..mm,1..nn] of integer; m,n,i,j,imax,jmax:integer; begin Writeln('Введите число строк и столбцов массива: '); Read(m,n); Randomize; Writeln('*** Исходный массив ***'); imax:=1; jmax:=1; for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=Random(51)-25; Write(a[i,j]:4); if a[i,j]>a[imax,jmax] then begin imax:=i; jmax:=j end end; Writeln end; for i:=1 to m do a[i,jmax]:=0; for j:=1 to n do a[imax,j]:=0; Writeln('*** Результирующий массив ***'); for i:=1 to m do begin for j:=1 to n do Write(a[i,j]:4); Writeln end end.
1. Поменяны прописные и строчные буквы: закодированные слова начинаются со строчных букв, а остальные прописные, хотя в исходных словах все наоборот. 2. Длина слов сохранилась, как было три пятибуквенных имени и три шестибуквенных, так и осталось, следовательно одни символы были заменены на другие. 3. В имени Филипп две последние буквы совпадают и среди закодированных слов есть одно шестибуквенное тХКХОО, в котором совпадают две последние буквы. Также есть имя Максим, в котором первая и последняя буквы совпадают, а среди закодированных есть шестибуквенное лЮЙЯХЛ. На этом основании предполагаем, что произведена подмена одной буквы другой, причем подмена постоянная, т.е. конкретная буква всегда подменяется одной и той же. 4. Мы нашли два шестибуквенных имени, следовательно третье (Густав) закодировано как цСЯРЮБ. 5. Среди пятибуквенных имен два начинаются на одну и ту же букву (А), а среди закодированных имен есть два, начинающиеся на "ю", тогда оставшееся бЮДХЛ - это имя Вадим. 6. В слове юМРНМ совпадают вторая и последняя буквы. В имени Антон они также совпадают, следовательно оставшееся юПР╦Л - это Артём. Окончательно: юПР╦Л - Артём юМРНМ - Антон бЮДХЛ - Вадим лЮЙЯХЛ - Максим цСЯРЮБ - Густав тХКХОО - Филипп
const
nn=30;
mm=30;
var
a:array[1..mm,1..nn] of integer;
m,n,i,j,imax,jmax:integer;
begin
Writeln('Введите число строк и столбцов массива: '); Read(m,n);
Randomize;
Writeln('*** Исходный массив ***');
imax:=1; jmax:=1;
for i:=1 to m do begin
for j:=1 to n do begin
a[i,j]:=Random(51)-25;
Write(a[i,j]:4);
if a[i,j]>a[imax,jmax] then
begin imax:=i; jmax:=j end
end;
Writeln
end;
for i:=1 to m do a[i,jmax]:=0;
for j:=1 to n do a[imax,j]:=0;
Writeln('*** Результирующий массив ***');
for i:=1 to m do begin
for j:=1 to n do Write(a[i,j]:4);
Writeln
end
end.
Тестовое решение:
Введите число строк и столбцов массива:
5 8
*** Исходный массив ***
11 -10 -25 -25 -19 -3 -2 0
-24 1 5 -25 -21 -16 -16 -22
-21 -10 -12 7 20 16 0 -10
-13 25 -18 18 -5 9 15 1
-19 -10 -16 9 -11 11 24 -19
*** Результирующий массив ***
11 0 -25 -25 -19 -3 -2 0
-24 0 5 -25 -21 -16 -16 -22
-21 0 -12 7 20 16 0 -10
0 0 0 0 0 0 0 0
-19 0 -16 9 -11 11 24 -19
2. Длина слов сохранилась, как было три пятибуквенных имени и три шестибуквенных, так и осталось, следовательно одни символы были заменены на другие.
3. В имени Филипп две последние буквы совпадают и среди закодированных слов есть одно шестибуквенное тХКХОО, в котором совпадают две последние буквы. Также есть имя Максим, в котором первая и последняя буквы совпадают, а среди закодированных есть шестибуквенное лЮЙЯХЛ. На этом основании предполагаем, что произведена подмена одной буквы другой, причем подмена постоянная, т.е. конкретная буква всегда подменяется одной и той же.
4. Мы нашли два шестибуквенных имени, следовательно третье (Густав) закодировано как цСЯРЮБ.
5. Среди пятибуквенных имен два начинаются на одну и ту же букву (А), а среди закодированных имен есть два, начинающиеся на "ю", тогда оставшееся бЮДХЛ - это имя Вадим.
6. В слове юМРНМ совпадают вторая и последняя буквы. В имени Антон они также совпадают, следовательно оставшееся юПР╦Л - это Артём.
Окончательно:
юПР╦Л - Артём
юМРНМ - Антон
бЮДХЛ - Вадим
лЮЙЯХЛ - Максим
цСЯРЮБ - Густав
тХКХОО - Филипп