Сделал не через numpy, как смог:
from random import random
matrix = [[random() for j in range(5)] for i in range(7)]
print('Матрица: \n', str(matrix)[1:-1].replace('], ', '\n').replace('[', '').replace(']', '').replace(',',' '), sep='')
print('Минимальное значение =>', max(max(matrix[i]) for i in range(7)))
print('Максимальное значение =>', min(min(matrix[i]) for i in range(7)))
min_mass = []
for g in matrix:
min_mass += [min(g)]
print('Минимальные значения каждой строки пред. матрицы =>', min_mass)
Но хотя бы работает
Все просто: производители носителей информации зачастую в рекламных целях указывают объем информации, которые вмещают их продукты, в завышенном количестве. Они принимают 1000 байт за один килобайт, 1000 килобайт за 1 мегабайт, 1000 мегабайт за 1 гигабайт и так далее. Компьютер же рассчитывает объем, принимая 1 килобайт как
байт (и далее так же). Таким образом и получается разница между заявленным объемом диска и реальным.
Разберем на указанном вами примере: производитель флеш-памяти указал объем в 32гб, подразумевая при этом 32*1000*1000*1000=32'000'000'000 байт. На компьютере они будут отображаться как 32'000'000'000 / 1024 = 31'250'000 килобайт, то есть 31'250'000 / 1024 ≈ 30'517 мегабайт, то есть 30'517 / 1024 ≈ 29,8 гигабайт.