Задание выполняется с использованием прилагаемых файлов
Откройте файл электронной таблицы, содержащей в каждой строке пять натуральных чисел. Определите количество строк таблицы, содержащих числа, для которых выполнены оба условия:
— в строке все числа различны;
— удвоенная сумма максимального и минимального чисел строки не больше суммы оставшихся трёх её чисел.
В ответе запишите только число.
Решение Excel:
Сначала проверим 1 условие. Запишем в ячейку следующую формулу — =ЕСЛИ(ИЛИ(A1=B1,A1=C1,A1=D1,A1=E1,B1=C1,B1=D1,B1=E1,C1=D1,C1=E1,D1=E1),0,1).
Затем проверим 2 условие. Воспользуемся функциями =НАИБОЛЬШИЙ() и =НАИМЕНЬШИЙ(). Как они работает: подается массив и номер числа по убыванию. Так, в строке функция =НАИБОЛЬШИЙ(x:y; 1) выведет
, а функция =НАИМЕНЬШИЙ(x:y; 1) выведет
. Запишем в ячейку формулу — =СУММ(A1:E1)-НАИБОЛЬШИЙ(A1:E1,1)-НАИМЕНЬШИЙ(A1:E1,1) и скопируем ее на диапазон
. Получим сумму за вычетом наибольшего и наименьшего значений. Запишем в ячейку формулу — ЕСЛИ(И(2*(НАИБОЛЬШИЙ(A1:E1,1)+НАИМЕНЬШИЙ(A1:E1,1))<=G1,F1=1),1,0) и скопируем ее на диапазон
. Считаем количество строк удовлетворяющих 1 и 2 условию — =СУММ(H:H)
Решение программой:
f = open(’9.txt’, ’r’)
count = 0
for line in f:
a = [int(x) for x in line.split()]
if len(set(a)) == 5 and 2 * (max(a) + min(a)) <= sum(a) - max(a) - min(a):
count += 1
print(count)