Напишите программу которая заполняет матрицу размером 7х7 случайными числами, а затем...

0 голосов
445 просмотров

Напишите программу которая заполняет матрицу размером 7х7 случайными числами, а затем записывает в элементы отмеченные на рисунках серым фоном число 99.


image

Информатика (29 баллов) | 445 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Const
   N = 7;
Var
   A:array[1..N,1..N] of integer;
   i,j:integer;
Begin
For i:= 1 to N do
    Begin
    For j:= 1 to N do
        Begin
        A[i,j]:=random(21)-10;
        Write(A[i,j]:3,' ')
        End;
    WriteLn
    End;
WriteLn;
For i:= 1 to N div 2+(N mod 2) do
    Begin
    For j:= 1 to N do
        Begin
        if (j<=N div 2+i)and(N div 2-i+(N mod 2)<j) then A[i,j]:=99;<br>        Write(A[i,j]:3,' ')
        End;
    WriteLn;
    End;
For i:= (N div 2)+(N mod 2)+1 to N do
    Begin
    For j:= 1 to N do
        Begin
        if (i-N div 2-1        Write(A[i,j]:3,' ')
        End;
    WriteLn;
    End;
End.

(34.0k баллов)
0 голосов

//PascalABC.Net 3.2
const N = 7; //Порядок квадратной Матрицы
type me = array[1..N, 1..N] of integer;
{пользовательский тип для передачи в функцию или процедуру
матрицы}

procedure _randomMatrix(var a: me; l, r{левая/правая граница интервала}:
integer);
begin
randomize;
  for var i:=1 to N do
    for var j:=1 to N do a[i, j]:=random(l, r);
end;

procedure _printMatrix(a: me); //построчное выведение матрицы на экран
begin
  for var i:=1 to N do
    for var j:=1 to N do writeln ('[', i:2, ', ', j:2, '] = ', a[i, j]);
end;

begin
var matr: me;
_randomMatrix(matr, -15, 15);
_printMatrix(matr);
for var i:=0 to 3 do
begin
    for var j:=4-i to 4+i do matr[i+1, j]:=99;
    for var j:=4-i to 4+i do matr[7-i, j]:=99;
end;
writeln;
_printMatrix(matr);
end.

(3.8k баллов)