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

Ответы и решения урока 4.4(Матрицы. Часть 1) на курс «Поколение Python: курс для продвинутых»

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

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

2×3

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

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

−2

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

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)

101

На вход программе подаются два натуральных числа 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 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"""Верхняя четверть: {up}
Правая четверть: {right}
Нижняя четверть: {down}
Левая четверть: {left}""")

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

Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

3 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
liony
liony
6 месяцев назад

n = int(input())
matrix = [list(map(int, input().split())) for _ in range(n)]

top_sum = 0
right_sum = 0
bottom_sum = 0
left_sum = 0

for i in range(n):
   for j in range(n):
       if i < j and i + j < n — 1: # верхняя четверть
           top_sum += matrix[i][j]
       elif i < j and i + j > n — 1: # правая четверть
           right_sum += matrix[i][j]
       elif i > j and i + j > n — 1: # нижняя четверть
           bottom_sum += matrix[i][j]
       elif i > j and i + j < n — 1: # левая четверть
           left_sum += matrix[i][j]

print(«Верхняя четверть:», top_sum)
print(«Правая четверть:», right_sum)
print(«Нижняя четверть:», bottom_sum)
print(«Левая четверть:», left_sum)

liony
liony
6 месяцев назад

# put your python code here

result = []
n = int(input())
for i in range(1, n + 1):
   line = list(map(int, input().split()))
   temp = 0
   if i <= n // 2 + 1:
       temp = i
   else:
       temp = abs(i — n — 1)
   result += (line[:temp] + line[-temp:])
print(max(result))

liony
liony
6 месяцев назад
result = []
for i in range(int(input())):
    result += (list(map(int, input().split())))[:i+1]
print(max(result))
3
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x