Аватар
Информатика, опубликовано 2018-08-22 21:32:10 by Гость

Дан двумерный массив размерностью 5 х 6, заполненный случайным образом. − заменить минимальный элемент каждой строки на противоположный. − вставить после столбцов с максимальными элементами столбец из единиц. − удалить первую строку.− поменять местами предпоследний и последний столбцы.

Аватар
Ответ оставил Гость

Type
  mas=array[,] of integer;
var
  i,j,ik,jk,k,max:integer;
  a:mas;
  b:array[0..5]of integer;//вспомогательный массив
begin
setlength(a,5,6);
writeln(Массив:);
// в массиве b минимальное число строки
for i:=0 to 4 do
  begin
  for j:=0 to 5 do
    begin
    a[i,j]:=random(-10,10);
    write(a[i,j]:4);
    if j=0 then b[i]:=a[i,0];
    if a[i,j]    end;
  writeln;
  end;
writeln(Замена минимального противоположным:);
for i:=0 to 4 do
  begin
  for j:=0 to 5 do
    begin
    if a[i,j]=b[i] then a[i,j]:=-a[i,j];
    write(a[i,j]:4);
    end;
  writeln;
  end;  
writeln(Вставка столбцов:);
// в массиве b признак наличия в столбце максимума
for i:=0 to 5 do b[i]:=0;
for i:=0 to 4 do
  for j:=1 to 5 do
    if a[i,j]>max then  max:=a[i,j];
for i:=0 to 4 do
  for j:=0 to 5 do
    if a[i,j]=max then b[j]:=1;
for i:=0 to 5 do k:=k+b[i];
k:=5+k;
setlength(a,5,k+1);
jk:=k;
for j:=5 downto 0 do
  begin
    if b[j]=1 then
      begin
      for ik:=0 to 4 do a[ik,jk]:=1;
      jk:=jk-1;
      end;
    for ik:=0 to 4 do a[ik,jk]:=a[ik,j];
    jk:=jk-1;
  end;
for i:=0 to 4 do
  begin
  for j:=0 to k do  write(a[i,j]:4);
  writeln;
  end;  
writeln(Удаление первой строки:);
for i:=0 to 3 do
  for j:=0 to k do
    a[i,j]:=a[i+1,j];
setlength(a,4,k+1);
for i:=0 to 3 do
  begin
  for j:=0 to k do
    write(a[i,j]:4);
  writeln;
  end;  
writeln(Обмен столбцов:);
for i:=0 to 3 do
  begin
  b[i]:=a[i,k-1];
  a[i,k-1]:=a[i,k];
  a[i,k]:=b[i];
  end;
for i:=0 to 3 do
  begin
  for j:=0 to k do  write(a[i,j]:4);
  writeln;
  end;
end.

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.