Вопрос задан 29.07.2023 в 09:14. Предмет Информатика. Спрашивает Константинопольский-Топский Кирилл.

Дан двумерный массив A(m,n). Получить линейный массив B(n) ,в котором B(i)- сумма элементов i-го

столбца массива A(m,n), при i, изменяющимся от 1 до m. Числа m, n и элементы массива A ввести с клавиатуры. На экран вывести элементы полученного массива B. Паскаль
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Зенков Александр.
PascalABC.NET 3.4.0, сборка 1671 от 31.05.2018
Внимание! Если программа не работает, обновите версию!

begin
  var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
  Writeln('*** Исходный массив ***');
  var a:=MatrRandom(m,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var b:=a.Cols.Select(col->col.Sum).ToArray;
  Writeln('Массив сумм по столбцам');
  b.Println
end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи на языке программирования Паскаль (Pascal) можно воспользоваться следующим кодом. Программа позволит вам ввести значения m, n и элементы массива A с клавиатуры и выведет на экран массив B.

pascal
program SumOfColumns; const MAX_SIZE = 100; // Максимальный размер массива type TArray = array[1..MAX_SIZE, 1..MAX_SIZE] of Integer; var A: TArray; B: array[1..MAX_SIZE] of Integer; m, n, i, j: Integer; procedure ReadMatrix(var matrix: TArray; rows, cols: Integer); begin writeln('Введите элементы массива A:'); for i := 1 to rows do for j := 1 to cols do readln(matrix[i, j]); end; procedure CalculateColumnSum(const matrix: TArray; rows, cols: Integer; var result: array of Integer); begin for j := 1 to cols do begin result[j] := 0; for i := 1 to rows do result[j] := result[j] + matrix[i, j]; end; end; procedure PrintArray(const arr: array of Integer; length: Integer); begin writeln('Результат:'); for i := 1 to length do writeln('B[', i, '] = ', arr[i]); end; begin // Ввод размерности массива writeln('Введите количество строк m:'); readln(m); writeln('Введите количество столбцов n:'); readln(n); // Проверка на допустимость размеров массива if (m <= 0) or (n <= 0) or (m > MAX_SIZE) or (n > MAX_SIZE) then begin writeln('Недопустимый размер массива. m и n должны быть положительными числами и не превышать ', MAX_SIZE); Exit; end; // Ввод элементов массива A ReadMatrix(A, m, n); // Вычисление суммы столбцов и заполнение массива B CalculateColumnSum(A, m, n, B); // Вывод результата PrintArray(B, n); end.

При запуске программы вам будет предложено ввести значения m и n (размеры массива), а затем элементы массива A. После этого программа вычислит суммы столбцов массива A и выведет их в виде массива B.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос