Помогите написать код к 4 задачкам:
1) Имеется двумерный массив целых чисел размерности 6*5. Найти
номер строки, для которой среднеарифметическое значение ее
элементов максимально.
2) Заполнить двумерный массив целыми числами от 1 до 100 по
спирали.
3) В двумерном массиве целых чисел заменить все элементы, меньшие
суммы элементов первой строки на эту сумму.
4) Отсортировать строки массива целых чисел по убыванию.
Python
Срочная помощь по Python
1)
2)
import random
def fmt(i): return "%5d" % i
def fmtRow(r): return " ".join(map(fmt, r))
a = [[random.randint(-10, 10) for _ in range(5)] for _ in range(6)]
print(*map(fmtRow, a), sep = '\n')
sums = list(map(sum, a))
imax = max(range(len(sums)), key = sums.__getitem__)
print("Номер строки:", imax + 1)
Пример:
9 6 -10 -5 2
10 5 5 -4 8
7 2 -4 -1 -8
-1 -4 9 6 3
-6 3 10 -6 10
10 8 6 10 4
Номер строки: 6
Ищем, разумеется, максимум по сумме, т.к. нет никакого смысла делить все суммы строк на одно и то же число.2)
def fmt(i): return "%5d" % i
def fmtRow(r): return " ".join(map(fmt, r))
def spiralMatrix(n):
m = [[0] * n for i in range(n)]
dx, dy = [0, 1, 0, -1], [1, 0, -1, 0]
x, y, c = 0, -1, 1
for i in range(n + n - 1):
for j in range((n + n - i) // 2):
x += dx[i % 4]
y += dy[i % 4]
m[x][y] = c
c += 1
return m
N = int(input("Размерность квадратной матрицы: "))
print(*map(fmtRow, spiralMatrix(N)), sep = '\n')
3) import random
def fmt(i): return "%5d" % i
def fmtRow(r): return " ".join(map(fmt, r))
a = [[random.randint(-10, 10) for _ in range(5)] for _ in range(6)]
print(*map(fmtRow, a), sep = '\n')
s = sum(a[0])
b = [[max(e, s) for e in r] for r in a]
print("После замены:", *map(fmtRow, b), sep = '\n')
Пример:
5 -7 -8 10 4
0 -10 -2 6 2
-5 -8 -5 7 2
-6 -2 10 0 6
7 -6 -6 9 9
-6 -4 -4 -3 -4
После замены:
5 4 4 10 4
4 4 4 6 4
4 4 4 7 4
4 4 10 4 6
7 4 4 9 9
4 4 4 4 4
4) import random
def fmt(i): return "%5d" % i
def fmtRow(r): return " ".join(map(fmt, r))
def revSort(r): return sorted(r, reverse = True)
a = [[random.randint(-10, 10) for _ in range(5)] for _ in range(6)]
print(*map(fmtRow, a), sep = '\n')
s = map(revSort, a)
print("После сортировки:", *map(fmtRow, s), sep = '\n')
Пример:
5 1 -1 -2 0
-10 -7 -5 -4 -10
4 5 5 10 -8
-8 7 6 2 -3
9 -9 -5 -1 -10
-6 7 1 4 6
После сортировки:
5 1 0 -1 -2
-4 -5 -7 -10 -10
10 5 5 4 -8
7 6 2 -3 -8
9 -1 -5 -9 -10
7 6 4 1 -6
Рамиль Валиев
Пример для (2):
Похожие вопросы
- Помощь с Python Завершение после выполнения части кода
- Нужна помощь по PYTHON,заранее спасибо
- Нужна помощь в python
- Можно помощь в Python Коде.
- Решите с помощью языка программирования Python!
- Нужна помощь.(Язык программирования Python)
- Как отредактировать фаил hosts с помощью python
- Python# Можно помощь с задачей на Python
- Окончил курсы на степике по Python что делать дальше?
- Python программирование. Помогите написать программу.