Top.Mail.Ru
Ответы

Задачи по питону. Напишите пожалуйста код. Прошу очень надо!!!

1. Определить наименьший элемент каждой четной строки матрицы
А[М, N].
2. Найти наибольший и наименьший элементы прямоугольной матрицы
и поменять их местами.

1. Задана квадратная матрица. Переставить строку с максимальным
элементом на главной диагонали со строкой с заданным номером m.
2. Составить программу, которая заполняет квадратную матрицу порядка
п натуральными числами 1, 2, 3, ..., n2, записывая их в нее «по спирали».
Например, для п = 5 получаем следующую матрицу:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
14 12 11 10 9

1. Определить номера строк матрицы R[M, N], хотя бы один элемент
которых равен с, и элементы этих строк умножить на d.
2. Среди тех строк целочисленной матрицы, которые содержат только
нечетные элементы, найти строку с максимальной суммой модулей
элементов.

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Новичок

Можно оригинал а не скопированное?

Аватар пользователя
Оракул

Для таких как ты чат ГПТ есть

Аватар пользователя
Высший разум

Любимый уйдёт, жизнь разрушится?

Аватар пользователя

Определить наименьший элемент каждой четной строки матрицы А[М, N]

12345
 matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]];result = [] 
for i in range(len(matrix)): 
    if i % 2 != 0: 
        result.append(min(matrix[i])) 
print(result)  

Найти наибольший и наименьший элементы прямоугольной матрицы и поменять их местами

12345678910111213141516
 matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 
max_val = matrix[0][0] 
min_val = matrix[0][0] 
max_row = 0 ; min_row = 0 ; max_col = 0 ; min_col = 0  
for i in range(len(matrix)): 
    for j in range(len(matrix[i])): 
        if matrix[i][j] > max_val: 
            max_val = matrix[i][j] 
            max_row = i 
            max_col = j 
        if matrix[i][j] < min_val: 
            min_val = matrix[i][j] 
            min_row = i 
            min_col = j 
matrix[max_row][max_col], matrix[min_row][min_col] = matrix[min_row][min_col], matrix[max_row][max_col] 
print(matrix)  

Задана квадратная матрица. Переставить строку с максимальным элементом на главной диагонали со строкой с заданным номером m

12345678
 matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 
m = 1 
max_row = 0 
for i in range(len(matrix)): 
    if matrix[i][i] > matrix[max_row][max_row]: 
        max_row = i 
matrix[max_row], matrix[m] = matrix[m], matrix[max_row] 
print(matrix)  

Составить программу, которая заполняет квадратную матрицу порядка п натуральными числами 1, 2, 3, ..., n2, записывая их в нее «по спирали

123456789101112131415161718192021
 def sf(n): 
    matrix = [[0]*n for i in range(n)] 
    count = 1 
    for layer in range((n+1)//2): 
        for j in range(layer, n-layer): 
            matrix[layer][j] = count 
            count += 1 
        for i in range(layer+1, n-layer): 
            matrix[i][n-layer-1] = count 
            count += 1 
        for j in range(n-layer-2, layer-1, -1): 
            matrix[n-layer-1][j] = count 
            count += 1 
        for i in range(n-layer-2, layer, -1): 
            matrix[i][layer] = count 
            count += 1 
    return matrix  
n = 5 
matrix = sf(n) 
for row in matrix: 
    print(row)  

Найти номера строк матрицы R[M, N], хотя бы один элемент которых равен c, и элементы этих строк умножить на d

1234567891011121314151617
 def sf(matrix, c, d): 
    row_nums = [] 
    for i in range(len(matrix)): 
        if c in matrix[i]: 
            row_nums.append(i) 
            for j in range(len(matrix[i])): 
                matrix[i][j] *= d 
    return row_nums 
 
# Пример использования функции 
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 
c = 5 
d = 2 
row_nums = sf(matrix, c, d) 
print(row_nums) 
for row in matrix: 
    print(row)  

Среди тех строк целочисленной матрицы, которые содержат только нечетные элементы, найти строку с максимальной суммой модулей элементов

12345678910111213141516
 def sf(matrix): 
    max_row = [] 
    max_sum = 0 
    for row in matrix: 
        odd_elems = [elem for elem in row if elem % 2 != 0] 
        if odd_elems == row: 
            abs_sum = sum(map(abs, odd_elems)) 
            if abs_sum > max_sum: 
                max_row = row 
                max_sum = abs_sum 
    return max_row 
 
# Пример использования функции 
matrix = [[1, 3, 5], [2, 4, 6], [7, 9, 11], [8, 10, 12], [13, 15, 17]] 
max_row = sf(matrix) 
print(max_row)  
Аватар пользователя

Хорошо, давайте приступим к созданию кода для решения ваших задач.

1. Определить наименьший элемент каждой четной строки матрицы А[M, N]:

def min_ele_matrix(matrix, m, n):
min_element = float('inf') # определение максимального значения

for i in range(m): # цикл для перебора строк
if i % 2 == 0: # проверка на четность строк
for j in range(n): # цикл для перебора элементов в строке
if matrix[i][j] < min_element: # проверка на минимальность элемента
min_element = matrix[i][j]
return min_element

2. Найти наибольший и наименьший элементы прямоугольной матрицы и поменять их местами:

def swap_range_matrix(matrix, m, n):
min_element = float('inf') # определение максимального значения
max_element = 0 # определение минимального значения

for i in range(m): # цикл для перебора строк
for j in range(n): # цикл для перебора элементов в строке
if matrix[i][j] < min_element: # проверка на минимальность элемента
min_element = matrix[i][j]
if matrix[i][j] > max_element: # проверка на максимальность элемента
max_element = matrix[i][j]

# поиск индексов максимального и минимального элемента
min_i, min_j, max_i, max_j = 0, 0, 0, 0
for i in range(m