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

Напишите программу в Паскале: Упорядочить элементы каждой строки заданной матрицы А(5, 4), расположив их в матрице В(5, 4) по убыванию. Полученную матрицу напечатать по строкам.

Показать ответ
Ответ:
kamilfox
kamilfox
30.12.2020 12:36

ответ:    uses crt;

   var a:array[1..50,1..50] of integer;{матрица}

       m,n,i,j,k,tmp:integer; {размеры матрицы,счетчики циклов, буфер для обмена}

   begin

   clrscr;

   randomize;

   writeln('Введите размеры матрицы:');

   write(' Количество строк m=');

   repeat

   readln(m);

   until m in [1..50];

   write(' Количество столбцов n=');

   repeat

   readln(n);

   until n in [1..50];

   writeln;

   writeln('Исходная матрица:');

   for i:=1 to m do

    begin

     for j:=1 to n do

      begin

       a[i,j]:=random(100);{заполним матрицу случайными числами в инт[0,99]}

       write(a[i,j]:4);

      end;

     writeln;

    end;

   writeln;

   {сортировка матрицы пузырьком}

   for k:=1 to n*m do  {повторяем сколько элементов в матрице}

   for i:=1 to m do

   for j:=1 to n do

      begin

       if j<>n then {если элемент в строке не последний}

        begin

         if a[i,j+1]>a[i,j] then

           begin

            tmp:=a[i,j+1];

            a[i,j+1]:=a[i,j];

            a[i,j]:=tmp;{обмен элементов}

           end;

        end

       else

         if (a[i+1,1]>a[i,j])and(i<>m)then {если строка не последняя}

        {меняем первый элемент в следущей строке с последним элементом в текущей строке}

           begin

            tmp:=a[i+1,1];

            a[i+1,1]:=a[i,j];

            a[i,j]:=tmp;

          end;

      end;

   writeln('Отсортированная матрица:');

   for i:=1 to m do

    begin

     for j:=1 to n do

     write(a[i,j]:4);

     writeln;

    end;

   readln

   end.

Объяснение:

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота