Напишите программу которая вычисляет сумму элементов матрицы
Перейти к содержимому

Напишите программу которая вычисляет сумму элементов матрицы

  • автор:

Напишите программу которая вычисляет сумму элементов матрицы

Скачай курс
в приложении

Перейти в приложение
Открыть мобильную версию сайта

© 2013 — 2024. Stepik

Наши условия использования и конфиденциальности

Get it on Google Play

Public user contributions licensed under cc-wiki license with attribution required

Решение модуля 4.4 Поколение Python: для продвинутых

Какова размерность матрицы matrix ?

matrix = [[45, 4, 77],
[41, 7, 17]]

Что покажет приведенный ниже фрагмент кода?

matrix = [[1, 2, 8, 0],
[-4, 1, 9, 4],
[41, 71, 2, -2]]
print(matrix[2][3])

Что покажет приведенный ниже фрагмент кода?

n = 3
a = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
for i in range(n):
for j in range(n):
print(a[i][j], end=’ ‘)
print()

1 2 3 4 5 6 7 8 9

Что покажет приведенный ниже фрагмент кода?

n = 3
a = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
for i in range(n):
for j in range(n):
print(a[j][i], end=’ ‘)
print()

1 4 7 2 5 8 3 6 9

Что покажет приведенный ниже фрагмент кода?

n = 3
a = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
for i in range(n):
for j in range(n):
print(a[n — i — 1][n — j — 1], end=’ ‘)
print()

9 8 7 6 5 4 3 2 1

Что покажет приведенный ниже фрагмент кода?

n = 5
a = [[19, 21, 33, 78, 99],
[41, 53, 66, 98, 76],
[79, 80, 90, 60, 20],
[33, 11, 45, 67, 90],
[45, 67, 12, 98, 23]]

maximum = -1
minimum = 100

for i in range(n):
if a[i][i] > maximum:
maximum = a[i][i]
if a[i][n — i — 1] < minimum:
minimum = a[i][n — i — 1]
print(minimum + maximum)

На вход программе подаются два натуральных числа nn и mm, каждое на отдельной строке — количество строк и столбцов в матрице. Далее вводятся сами элементы матрицы — слова, каждое на отдельной строке; подряд идут элементы сначала первой строки, затем второй, и т.д.

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

m, n, matrix = int(input()), int(input()), [] for i in range(m): matrix.append([input() for _ in range(n)]) print(*matrix[i])

На вход программе подаются два натуральных числа nn и mm, каждое на отдельной строке — количество строк и столбцов в матрице. Далее вводятся сами элементы матрицы — слова, каждое на отдельной строке; подряд идут элементы сначала первой строки, затем второй, и т.д.

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

n, m = int(input()), int(input()) matrix = [[input() for _ in range(m)] for i in range(n)] for i in matrix: print(*i) print() for i in range(m): for j in range(n): print(matrix[j][i], end=' ') print()

Следом квадратной матрицы называется сумма элементов главной диагонали. Напишите программу, которая выводит след заданной квадратной матрицы.

res = 0 for i in range(int(input())): res += int(input().split()[i]) print(res) 

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

n = int(input()) l = [input().split() for _ in range(n)] counter = 0 for i in l: sr = (sum(list(map(int, i)))) / len(i) for j in i: if int(j) > sr: counter += 1 print(counter) counter = 0

Решение модуля 4.4 Поколение Python: для продвинутых

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

n = int(input()) arr = [] mtr = [[int(i) for i in input().split()] for j in range(n)] for i in range(n): for j in range(n): if i >= j: arr.append(mtr[i][j]) print(max(arr))

Решение модуля 4.4 Поколение Python: для продвинутых

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

n = int(input()) s = [] for i in range(n): f = [int(i) for i in input().split()] for j in range(len(f)): if (i >= j and i = n - 1 -j) or (i == j) or (i + j + 1 == n): s.append(f[j]) print(max(s)) 

Решение модуля 4.4 Поколение Python: для продвинутых

Квадратная матрица разбивается на четыре четверти, ограниченные главной и побочной диагоналями: верхнюю, нижнюю, левую и правую.

Напишите программу, которая вычисляет сумму элементов: верхней четверти; правой четверти; нижней четверти; левой четверти.

n = int(input()) matrix = [[int(el) for el in input().split()] for _ in range(n)] left = sum([sum([matrix[i][j] for j in range(n) if i > j and i < n-1-j]) for i in range(n)]) down = sum([sum([matrix[i][j] for j in range(n) if i >j and i > n-1-j]) for i in range(n)]) up = sum([sum([matrix[i][j] for j in range(n) if i < j and i < n-1-j]) for i in range(n)]) right = sum([sum([matrix[i][j] for j in range(n) if i < j and i >n-1-j]) for i in range(n)]) print(f"""Верхняя четверть: Правая четверть: Нижняя четверть: Левая четверть: """)

Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы

программа которая находит сумму элементов матрицы А, расположенных ниже побочной диагонали

Дана квадратная матрица А(n,n) вещественных чисел где n

program Project1; const maxelem = 10; var a: array[1..maxelem,1..maxelem] of real; < Переменная для хранения массива.>n: integer; i,j: integer; begin write('Введите значение размерности матрицы: (не более ',maxelem,'): '); Readln(n); for i:= 1 to n do for j:= 1 to n do begin write('Введите значение элемента [',i,',',j,']: '); Readln(a[i,j]); < Ввод значений в двумерный массив.>end; writeln('Исходная матрица: '); for i:= 1 to n do begin for j:= 1 to n do write(a[i,j]:7:2); < Вывод двумерного массива в консоль.>Writeln; end; writeln('Элементы побочной диагонали: '); for i:= 1 to n do write(a[n-i+1,i]:7:2); Readln; end. 

Отслеживать

задан 22 июн 2020 в 17:47

user385915 user385915

и как вывести именно сумму элементов ниже побочной диагонали, а то вроде не так выводит даже сами элементы

Суммы элементов строк матрицы

Вариант 1. Найти сумму элементов каждой строки матрицы (двумерного массива).

Вариант 2. Вычислить сумму элементов определенной строки матрицы.

Если поставлена задача вычислить сумму элементов каждой строки матрицы, то алгоритм ее выполнения таков:

  1. По-строчно перебираем элементы матрицы (внешний цикл отвечает за переход к новой строке, счетчик — первый индекс элементов).
  2. Во внешнем цикле перед внутренним присваиваем переменной для суммы значение 0. В ней будет накапливаться сумма элементов текущей строки, элементы которой перебираются во внутреннем цикле.
  3. После внутреннего цикла выводим значение переменной-суммы на экран.

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

const M = 7; N = 5; var mat: array[1..N,1..M] of real; i, j: byte; sum: real; begin for i:=1 to N do begin sum := 0; for j:=1 to M do begin mat[i,j] := random(); write(mat[i,j]:6:2); sum := sum + mat[i,j]; end; writeln ('|', sum:6:2); end; end.
 0.55 0.59 0.72 0.84 0.60 0.86 0.54| 4.71 0.85 0.42 0.62 0.65 0.38 0.44 0.30| 3.66 0.89 0.06 0.96 0.27 0.38 0.48 0.79| 3.84 0.81 0.53 0.48 0.57 0.39 0.93 0.84| 4.54 0.07 0.34 0.09 0.65 0.02 0.37 0.83| 2.36

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

Программа ниже усложнена тем, что пользователь сам определяет номер строки матрицы, элементы которой необходимо просуммировать. Если поставлена задача, в которой конкретно задается строка, то вместо переменной num следует использовать число, обозначающее номер строки. Например, для третьей строки выражение sum := sum + mat[num,j] следует заменить на sum := sum + mat[3,j] .

const M = 7; N = 5; var mat: array[1..N,1..M] of real; i, j: byte; sum: real; num: byte; begin for i:=1 to N do begin // только заполняем и выводим матрицу for j:=1 to M do begin mat[i,j] := random(); write(mat[i,j]:6:2); end; writeln; end; write('Введите номер строки: '); readln(num); sum := 0; for j:=1 to M do // считаем сумму элементов заданной строки sum := sum + mat[num,j]; writeln('Сумма ее элементов: ', sum:6:2); end.
 0.55 0.59 0.72 0.84 0.60 0.86 0.54 0.85 0.42 0.62 0.65 0.38 0.44 0.30 0.89 0.06 0.96 0.27 0.38 0.48 0.79 0.81 0.53 0.48 0.57 0.39 0.93 0.84 0.07 0.34 0.09 0.65 0.02 0.37 0.83 Введите номер строки: 2 Сумма ее элементов: 3.66

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *