В прямоугольной таблице B(5;7),значение которой заданы генератором случайных чисел в...

0 голосов
46 просмотров

В прямоугольной таблице B(5;7),значение которой заданы генератором случайных чисел в интервале от 0 до 150 найти :
А)сумму значений элементов третьей строки.
Б)произведение элементов,значение которых меньше десяти.
В)подсчитать количество элементов ,значение которых больше ста.


Информатика | 46 просмотров
Дан 1 ответ
0 голосов

'''
Python 3.X

В прямоугольной таблице B(5;7), значения которой заданы
генератором случайных чисел в интервале от 0 до 150, найти:
    А) сумму значений элементов третьей строки.
    Б) произведение элементов, значение которых меньше 10.
    В) подсчитать количество элементов, значение которых больше 100.
'''

from functools import reduce # применение функции к списку
from operator import mul # операция умножения
from pprint import pprint # формат. вывод
from random import randint # случайные целые числа в промежутке


b = [[randint(0, 151) for _ in range(5)] for _ in range(7)]
print('Массив:')
pprint(b)

# Сумма элементов 3 строки
sum_3rd_row = sum(b[2])

# Произведение эл-тов < 10
rows_lt_10 = [list(filter(lambda x: x < 10, row)) for row in b]
rows_lt_10_mults = [reduce(mul, row) for row in rows_lt_10 if row]
product_lt_10 = reduce(mul, rows_lt_10_mults)

# Количество эл-тов > 100
rows_gt_100 = [list(filter(lambda x: x > 100, row)) for row in b]
rows_gt_100_lens = [len(row) for row in rows_gt_100]
count_gt_100 = sum(rows_gt_100_lens)

print('Сумма элементов 3 строки:', sum_3rd_row)
print('Произведение элементов < 10:', product_lt_10)
print('Количество элементов > 100:', count_gt_100)

(7.2k баллов)