Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # variant 17
- # для целочисленной квадратной матрицы найти число элементов кратных k и наибольший из этих элементов
- from random import randint
- def print_array(array,a,b):
- """Вывод массива"""
- for i in range(a):
- for j in range(b):
- print(array[i][j], end=' ')
- print()
- def completion_array(array,menu,a,b):
- """Заполение массива вручную/случайно"""
- # Заполняем массив вручную
- if menu == 1:
- for i in range(a):
- array.append([])
- for j in range(b):
- n = int(input(f'[{i+1}] [{j+1}]'))
- array[i].append(n)
- # Заполняем массив случайными числами
- elif menu == 2:
- for i in range(a):
- array.append([])
- for j in range(b):
- # Заполнение случайными числами
- n = randint(-100, 100)
- array[i].append(n)
- else:
- exit("Ошибка выбора!")
- def find_div(array,k,a,b):
- """Поиск кратных k элементов и последующий
- поиск максимального числа среди них"""
- result_arr = []
- for i in range(a):
- for j in range(b):
- # Проверяем кратность k
- if array[i][j] % k == 0:
- # если кратно добавим в новый массив
- result_arr.append(array[i][j])
- # если массив пустой
- if not result_arr:
- exit(f"Нету чисел кратных k = {k}")
- # Возьмем за максимальный первый элемент массива с кратными числами
- max = result_arr[0]
- # Поиск максимального элемента в массиве
- for i in result_arr:
- if i > max:
- max = i
- print(f"Число кратное {k} и наибольшее из них = {max}")
- a = int(input("Пожалуйста введите количество строк: "))
- b = int(input("Пожалуйста введите количество столбцов: "))
- menu = int(input("Заполнить массив в ручную - 1 \nЗаполнить случайно - 2 "))
- array = []
- # Вызовим функцию заполнения массива
- completion_array(array,menu,a,b)
- # Функция вывода массива
- print_array(array,a,b)
- k = int(input('Введите число k: '))
- # Поиск кратных и максимального среди них
- find_div(array,k,a,b)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement