NumPy Python задачка на формирование матриц
При помощи numpy нужно реализовать часть задания со скриншота (Ввод матриц , а также матрицу вывода и формирования F я сделала (код ниже)
С клавиатуры вводится два числа K и N. Квадратная матрица А(N,N), состоящая из 4-х равных по размерам подматриц, B,C,D,E заполняется случайным образом целыми числами в интервале [-10,10]. Для тестирования использовать не случайное заполнение, а целенаправленное. Вид матрицы А: E B D C
import time
import random
import numpy as np
def print_matrix(Matrix, matrix_name, timetime):
print(f"Матрица {matrix_name} промежуточное время = {round(timetime, 2)} seconds.")
for i in Matrix: # Делаем перебор всех строк матрицы
for j in i: # Деребираем все элементы в строке
print("%5d" % j, end=" ")
print()
print("\n-------Результат работы программы-------")
try:
matrix_size = int(input("Введите количество строк (столбцов) квадратной матрицы больше 4 : "))
while matrix_size < 4 or matrix_size > 100:
matrix_size = int(input("Вы ввели неверное число\nВведите количество строк (столбцов) квадратной матрицы больше 4 :"))
K = int(input("Введите число К="))
start = time.time()
A = np.zeros((matrix_size, matrix_size))
F = np.zeros((matrix_size, matrix_size))
time_next = time.time()
for i in range(matrix_size): # Формируем матрицу А
for j in range(matrix_size):
A[i][j] = np.random.randint(-10, 10)
time_prev = time_next
time_next = time.time()
print_matrix(A, "A", time_next - time_prev)
for i in range(matrix_size): # Формируем матрицу F, копируя из матрицы А
for j in range(matrix_size):
F[i][j] = A[i][j]
