В каждой строке электронной таблицы записаны три натуральных числа. Определите сколько среди заданных троек чисел таких, которые могут быть сторонами остроугольного треугольника.
Решение Excel:
Для того чтобы три отрезка могли составить остроугольный треугольник, необходимо чтобы выполнялось условие: длина любой стороны треугольника возведенная в квадрат меньше суммы квадратов длин двух его других сторон.
Запишем в ячейке D1 формулу для проверки этого условия:
=ЕСЛИ(И(A1*A1<B1*B1+C1*C1;B1*B1<A1*A1+C1*C1;C1*C1<A1*A1+B1*B1);1;0)
Остается растянуть эту формулу на все строки, а затем посчитать сумму по столбцу D.
Решение программой:
f = open(’9.txt’, ’r’)
count = 0
for line in f:
a, b, c = map(int, line.split())
sides = sorted([a, b, c])
if sides[0] + sides[1] > sides[2] and sides[2] ** 2 < sides[0] ** 2 + sides[1] ** 2:
count += 1
print(count)