Кв. матрица: одномерный массив из положительных элементов матрицы удалить max переставить 2-ой и последний

yuuliiya1717 yuuliiya1717    2   03.08.2019 04:50    0

Ответы
Govnoegc Govnoegc  30.09.2020 06:57
Const n=4;
var 
a:array[1..n,1..n] of integer;
b:array[1..n*n] of integer;
i,j,k,max,imax,c:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
 begin
 for j:=1 to n do
  begin
   a[i,j]:=random(51)-25;
   write(a[i,j]:4);
  end;
  writeln;
 end;
writeln('Полученный массив:');
k:=0;
for i:=1 to n do
 for j:=1 to n do
  if a[i,j]>0 then
   begin k:=k+1; b[k]:=a[i,j]; write(b[k]:4); end;
writeln;  
max:=b[1]; imax:=1;
for i:=1 to k do
  if b[i]>max then begin max:=b[i]; imax:=i; end;
writeln('max = b[',imax,'] = ',max);
for i:=imax to k-1 do b[i]:=b[i+1];
b[k]:=0;
writeln('Измененный массив:');
for i:=1 to k-1 do write(b[i]:4);
writeln;
c:=b[2]; b[2]:=b[k-1]; b[k-1]:=c;
writeln('Измененный массив:');
for i:=1 to k-1 do write(b[i]:4);
writeln;
end.

Пример:
Исходный массив:
  -8  -1   3   5
  22  25 -23 -17
  13   3  18  -1
   1 -19  13   0
Полученный массив:
   3   5  22  25  13   3  18   1  13
max = b[4] = 25
Измененный массив:
   3   5  22  13   3  18   1  13
Измененный массив:
   3  13  22  13   3  18   1   5
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика