Определить сумму всех элементов двумерной матрицы и переставить строки - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Всем привет! Какой алгоритм решения задания: "Дана матрица А(m, n), 1<(m, n)<10. Определить сумму всех элементов матрицы. Переставить строки по возрастанию количества положительных элементов в строках." ? Я вообще не могу что-то вдуплить, как и каким образом. Заранее спасибо)

Решение задачи: «Определить сумму всех элементов двумерной матрицы и переставить строки»

textual
Листинг программы
  1. const nmax=10;
  2. var a:array[1..nmax,1..nmax+1] of integer;
  3.     n,m,i,j,k,s:integer;
  4. begin
  5. randomize;
  6. repeat
  7. write('Количество строк от 2 до ',nmax,' m=');
  8. readln(m);
  9. until m in [2..nmax];
  10. repeat
  11. write('Количество столбцов от 2 до ',nmax,' n=');
  12. readln(n);
  13. until n in [2..nmax];
  14. //вычисление суммы и кол. полож. в строках, запись их в дополнительный столбец
  15. s:=0;
  16. for i:=1 to m do
  17.  begin
  18.   k:=0;
  19.   for j:=1 to n do
  20.    begin
  21.     a[i,j]:=-10+random(21);
  22.     s:=s+a[i,j];
  23.     if a[i,j]>0 then k:=k+1;
  24.    end;
  25.   a[i,n+1]:=k;
  26.  end;
  27. writeln('Исходный массив:');
  28. writeln('Кол. полож.':(n*4+12));
  29. for i:=1 to m do
  30.  begin
  31.   for j:=1 to n+1 do
  32.   if j=n+1 then write(a[i,j]:6)
  33.   else write(a[i,j]:4);
  34.   writeln;
  35.  end;
  36. writeln('Сумма всех элементов=',s);
  37. //перестановка строк по возрастанию кол. полож. (по последнему столбцу)
  38. for i:=1 to m-1 do
  39. for k:=i+1 to m do
  40. if a[i,n+1]>a[k,n+1] then
  41. for j:=1 to n+1 do
  42.  begin
  43.   s:=a[i,j];
  44.   a[i,j]:=a[k,j];
  45.   a[k,j]:=s;
  46.  end;
  47. writeln('Строки по возрастанию количества положительных элементов в них:');
  48. writeln('Кол.полож.':(n*4+12));
  49. for i:=1 to m do
  50.  begin
  51.   for j:=1 to n+1 do
  52.   if j=n+1 then write(a[i,j]:6)
  53.   else write(a[i,j]:4);
  54.   writeln;
  55.  end;
  56. end.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы