В чем ошибка? Помогите пожалуйста.

Задача
Даны длины трех отрезков. Выяснить, можно ли из этих отрезков составить произвольный треугольник.
Выходные данные:В выходной поток вывести 'YES' или 'NO'.

program Z1236;
var a,b,c:longint;
begin
readln(a,b,c);
if ((a=b+c)and(b=a+c)and(c=b+a)) then writeln ('NO')else writeln ('YES');
end.

1

Ответы и объяснения

  • Sky09
  • профессор
2013-12-20T00:41:29+04:00
Надо не равенство брать, а неравенство, причем:
чтобы составить треугольник, сумма двух сторон должна быть больше третьей, т.е. (a>=b+c) and (b>=a+c) and (c>=b+a)  - условие, при котором  НЕ выполняется условие задачи (так, чтобы в твоей программе не менять местами NO и  YES). А так все верно.