Домашние задания: Информатика

Информатика задача на массивы

Дан массив размерностью 7х7 из целых чисел. Напишите программу замены всех элементов массива кратных 5, стоящих на главной диагонали их удвоенным значением.
А как заполняется массив? Пользователем с клавиатуры или автоматически при помощи генератора случайных чисел? - На всякий случай пишу оба варианта.

1) Ввод вручную с клавиатуры. После того, как набирается число, нужно нажать клавишу "Enter" (предупреждаю заранее: это долго вводить 49 чисел):

Program Zamena5;
uses crt;
type m=array [1..7, 1..7] of integer;
var a: m;
i, j: integer;
begin
clrscr;
for i:=1 to 7 do
for j:=1 to 7 do begin
write ('Введите ', a[i,j], ' элемент массива: ');
readln (a[i,j]);
end;
writeln ('Вы ввели следующий массив: ');
for i:=1 to 7 do
for j:=1 to 7 do begin
writeln (a[i,j]);
end;
for i:=1 to 7 do
for j:=1 to 7 do begin
if (i=j) and (a[i,j] mod 5 =0) then a[i,j]:=2*a[i,j];
end;
writeln ('Массив после замены чисел, кратных 5 на главной диагонали: ');
for i:=1 to 7 do
for j:=1 to 7 do begin
write (a[i,j]:4);
end;
readkey;
end.

2) Массив заполняется автоматически:

Program Zamena5;
uses crt;
type m=array [1..7, 1..7] of integer;
var a: m;
i, j: integer;
begin
clrscr;
for i:=1 to 7 do
for j:=1 to 7 do begin
randomize;
a[i,j]:=random (100);
end;
writeln ('Был сгенерирован массив: ');
for i:=1 to 7 do
for j:=1 to 7 do begin
writeln (a[i,j]);
end;
for i:=1 to 7 do
for j:=1 to 7 do begin
if (i=j) and (a[i,j] mod 5 =0) then a[i,j]:=2*a[i,j];
end;
writeln ('Массив после замены чисел, кратных 5 на главной диагонали: ');
for i:=1 to 7 do
for j:=1 to 7 do begin
write (a[i,j]:4);
end;
readkey;
end.
Галина Дробященко
Галина Дробященко
43 559
Лучший ответ
if (i=j) and (a(i,j) mod 5 =0) then a(i,j)=2*a(i,j)
Кира Суркова
Кира Суркова
14 363