Откройте файл электронной таблицы 9_4.xls, содержащей в каждой строке пять натуральных чисел. Определите количество строк таблицы, в которых у среднего числа (по значению) разница с наибольшим больше 50, а с наименьшим числом больше 30.
Решение Excel:
Напишем в ячейке G1 следующую формулу и растянем на весь диапазон G1:G5000:
=НАИБОЛЬШИЙ(А1:Е1;3)
Эта функция возвращает третье по наибольшее число.
Далее в столбце Н пишем формулу:
=ЕСЛИ(И(МАКС(A1:E1)-G1>50;G1-МИН(A1:E1)>30);1;0)
То есть, если условие выполняется, то в соответствующую ячейку записывается 1, иначе 0. Тогда достаточно посчитать количество единиц через =СУММ(H1:H5000). Ответ 1330.
Решение программой:
f = open(’9.txt’, ’r’)
count = 0
for line in f:
a = sorted([int(x) for x in line.split()])
if (a[4] - a[2] > 50) and (a[2] - a[0] > 30):
count += 1
print(count)