Python

Питон 3 напишите часть кода!!

Треугольник
Вам даны 4 отрезка. Выведите YES, если среди них найдутся 3, из которых можно составить треугольник, и NO в противном случае. Для решения напишите функцию triangle(a, b, c), которая будет возвращать True, если из трёх заданных отрезков можно составить треугольник, и False иначе.
Внимание! Не забудьте про отступы при сдаче кода в этой задаче.
Ввод
1
2
3
4
Вывод
YES
Ввод
1
2
3
8
Вывод
NO

def triangle(a, b, c):

вот тут надо написать часть кода!!

a = int(input())
b = int(input())
c = int(input())
d = int(input())
if triangle(a,b,c) or triangle(a,b,d) \
or triangle(a,c,d) or triangle(b,c,d):
print("YES")
else:
print("NO")
 def triangle(a, b, c): 
if a + b > c and a + c > b and b + c > a:
return True
else:
return False
Эта функция проверяет, можно ли составить треугольник из трех заданных отрезков. Если сумма длин любых двух отрезков больше длины третьего отрезка, то из этих отрезков можно составить треугольник. В противном случае, нельзя.
ВМ
Влад Мусапов
25 860
Лучший ответ
Так было уже вчера, чем те-то решения не устроили?
 def triangle(a, b, c): return a + b > c
ds = sorted(map(int, map(input, ('',) * 4)))
print(('NO','YES')[any(triangle(*ds[:i], *ds[i+1:]) for i in range(len(ds)))])

А если подстраиваться под кривой код Сириуса, то придётся делать три проверки вместо одной:
 def triangle(a, b, c):
return (a + b > c) and (a + c > b) and (b + c > a)
А свой ввод-вывод тогда делать не надо.

Кстати, это - очень показательный пример, чему учат на курсах программирования. Вместо эффективного решения проблемы навязывается написание костыля для существующего неэффективного кода. Это, конечно, не случайность: работа будущих кодеров как раз и состоит в написании костылей для чужих готовых компонентов и в шаманских ритуалах в попытке заставить те компоненты работать.
***ernest*** Footballist
***ernest*** Footballist
54 053
Сергей Бубличенко вопрос публиковала я и ответы не верны!!
Сергей Бубличенко на сириусе пишет не верно
Сергей Бубличенко сириус так не считает...
Михаил Горбунов Дядь Реципиент, на Сириусе не принимают эти колдовские заклинания к которым ты так сильно склонен
Сергей Бубличенко надо написать код с использованием функций...
Сергей Бубличенко эта функция задана сириусом а надо что-то еще
Сергей Бубличенко def triangle(a, b, c):

вот тут надо написать часть кода!!

a = int(input())
b = int(input())
c = int(input())
d = int(input())
if triangle(a,b,c) or triangle(a,b,d) \
or triangle(a,c,d) or triangle(b,c,d):
print("YES")
else:
print("NO")
If ((a+b>c)and(a+c>b)and(b+c>a)):
•return 1
Артем Кривякин
Артем Кривякин
16 653
Артем Кривякин Там знак больше должен быть
Артем Кривякин Так должно быть правильно
def triangle(a, b, c):
if a + b > c and a + c > b and b + c > a:
return True
else:
return False

a = int(input())
b = int(input())
c = int(input())
d = int(input())
if triangle(a,b,c) or triangle(a,b,d) or triangle(a,c,d) or triangle(b,c,d):
print("YES")
else:
print("NO")