1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Семакин
Работа 3.7 Упр.23 ГДЗ Семакин 10 класс (Информатика)
Семакин, Хеннер, Шеина
10 класс
Автор
Семакин, Хеннер, Шеина

Работа 3.7 Упр.23 ГДЗ Семакин 10 класс (Информатика)

Задача

Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 23. Дана прямоугольная матрица. Найти строку с наибольшей и строку с наименьшей суммой элементов. Вывести на печать найденные строки и суммы их элементов.

Подробный ответ

Нужно найти в прямоугольной матрице две строки: с наибольшей суммой элементов и с наименьшей суммой элементов. Для этого сначала вводим матрицу, затем для каждой строки вычисляем сумму её элементов и запоминаем номера строк с максимальной и минимальной суммой.

Алгоритм:

  1. Ввести размер матрицы $$n$$ и элементы $$a[i,j]$$.
  2. Для каждой строки $$i$$ вычислить сумму $$t=\sum_{j=1}^{n} a[i,j]$$.
  3. Если сумма больше текущей максимальной, запомнить её и номер строки.
  4. Если сумма меньше текущей минимальной, запомнить её и номер строки.
  5. Вывести найденные строки и их суммы.

Программа на Pascal:

var a: array[1..20, 1..20] of integer;
n, s, i, j, k, mins, maxs, mini, maxi, t: integer;
begin
  Clrscr;
  Write(‘Введите количество строк n= ‘);
  Readln(n);
  for i:=1 to n do
    for j:=1 to n do
    begin
      Write(‘a(‘, i, ‘,’, j, ‘)= ‘);
      Readln(a[i,j]);
    end;

  Writeln(‘Матрица a’);
  for i:=1 to n do
  begin
    for j:=1 to n do
      Write(a[i,j], ‘ ‘);
    Writeln;
  end;

  mins:=0;
  for j:=1 to n do
    mins:=mins + a[1,j];
  maxs:=mins;
  mini:=1;
  maxi:=1;

  for i:=1 to n do
  begin
    t:=0;
    for j:=1 to n do
      t:=t + a[i,j];
    if t > maxs then
    begin
      maxs:=t;
      maxi:=i;
    end;
    if t < mins then
    begin
      mins:=t;
      mini:=i;
    end;
  end;

  Writeln(‘Max summ = ‘, maxs, ‘ stroka ‘, maxi);
  for j:=1 to n do
    Write(a[maxi,j], ‘ ‘);
  Writeln;

  Writeln(‘Min summ = ‘, mins, ‘ stroka ‘, mini);
  for j:=1 to n do
    Write(a[mini,j], ‘ ‘);
  Readln;
end.

В программе сначала сумма первой строки используется как начальное значение и для максимума, и для минимума. Затем остальные строки сравниваются с этими значениями, и номера нужных строк сохраняются в переменных maxi и mini.

Ответ

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



Общая оценка
4.8 / 5
Другие учебники
Другие предметы