В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
elina162006
elina162006
06.02.2021 01:38 •  Информатика

Сформируйте двухмерный массив и удалите из него все строки в которых встречается заданное число.tubrbopascal

Показать ответ
Ответ:
mishishinatany
mishishinatany
24.07.2020 13:17
Uses
  Crt;
const
  nn=10;
var
  a:array[1..nn,1..nn] of integer;
  d:array[1..nn] of boolean;
  i,j,k,n,n1,i1:integer;
begin
  ClrScr;
  Randomize;
  Write('Укажите число строк в массиве (2-10): ');
  Read(n);
  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;
  Write('Введите число, строки с которым надо удалить: ');
  Read(k);
  for i:=1 to n do
  begin
    d[i]:=False;
    j:=1;
    while (j<=n) and not d[i] do
    begin d[i]:=(a[i,j]=k); Inc(j) end
  end;
  n1:=n;
  while (d[n1]) and (n1>0) do Dec(n1);
  if n1=0 then Writeln('Удалены все строки')
  else begin
    for i:=n1 downto 1 do
    begin
      if d[i] then begin
    for i1:=i to n1-1 do
      for j:=1 to n do a[i1,j]:=a[i1+1,j];
    Dec(n1)
      end
    end;
    Writeln('Результирующий массив');
    for i:=1 to n1 do
    begin
      for j:=1 to n do Write(a[i,j]:4);
      Writeln
    end
  end;
  ReadKey
end.

Тестовое решение:
Укажите число строк в массиве (2-10): 10
Исходный массив
  -6  23  18   9   4  15 -22  12  16 -18
  11  20 -16 -22 -20 -24 -21  25  12  14
 -11   7  22   4  -6 -15 -14  -7 -19   1
 -16   5  -9  19   6  10   2   2  10  18
 -18  -6 -24  21  16 -22  12   2 -25   5
   0 -11  16 -11   6  21 -12  -1  13 -20
 -24   3 -22  14  19  22   2 -15  10 -13
 -22  16  12  24  -3  -2 -20  16 -11   4
  -9 -15  -1 -20  17 -17 -24   3 -19   9
  23   7 -25  -6  16  13  -5  22 -18  18
Введите число, строки с которым надо удалить: -6
Результирующий массив
  11  20 -16 -22 -20 -24 -21  25  12  14
 -16   5  -9  19   6  10   2   2  10  18
   0 -11  16 -11   6  21 -12  -1  13 -20
 -24   3 -22  14  19  22   2 -15  10 -13
 -22  16  12  24  -3  -2 -20  16 -11   4
  -9 -15  -1 -20  17 -17 -24   3 -19   9
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота