Правило треугольника

  • 4
  • Недоступна
Любые ли три отрезка могут быть сторонами треугольника или не любые? Наверное, вы уже догадались (или вспомнили из школьной геометрии), что треугольник получится, только когда сумма длин двух любых сторон будет больше длины третьей стороны. Ну а теперь напишем код проверки 3 отрезков на пригодность для сторон треугольника.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (192)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Александр Альпидовский16 уровень, Нижний Новгород
14 июля, 09:16
Если бы не комментарии, не разобрался бы с тернарным оператором. А так, теперь практически все простые условия с его помощью реализую. Раньше казалось, что сложновато читается, но потом втянулся как-то. Тут вот так получилось:
System.out.println(((a + b > c) && (a + c > b) && (b + c > a)) ? "Треугольник существует." : "Треугольник не существует.");
Lou Ashby4 уровень, Владимир
20 июля, 16:49
в условии задачи четко сказано "Если хотя бы в одном случае сторона окажется больше либо !(равна)! сумме двух других, то треугольника с такими сторонами не существует." А у вас проверка только на ">". отсутствует проверка на равенство. Принимает ваш ответ программа?
Александр Альпидовский16 уровень, Нижний Новгород
20 июля, 17:41

Конечно. С первого раза все принято. Скопируйте код, вставьте в IDEA и проверьте, чего зря спрашивать?

Подумайте, что значит "сторона больше либо равна сумме двух других". Это равноценно тому, что сумма двух сторон меньше третьей, так? В таком случае, треугольник не существует, верно? А существует он, когда сумма двух сторон больше третьей, так? Именно это условие у меня и проверяется. Во всех других случаях треугольник не существует.

Все по бим-бом-брамселям.

PACHA5 уровень, Riga
3 июля, 18:08
Объясните, почему (a < (b + c)) || (b < (a + c)) || (c < (a + b)) неправильно и все используют && вместо ||? У нас ведь должно какое-то одно условие быть верно а не все?
Ekaterina Shepeleva9 уровень, Oakland
4 июля, 19:07
все условия должны быть верны
Алексей6 уровень, Санкт-Петербург
28 июня, 15:16
Простые задачи начались слишком
Алексей5 уровень, Москва
8 июня, 10:41
Задача решается двумя условиями if и else, только необходимо их поменять местами - сначала при каких условиях треугольник не существует
Евгений5 уровень, Минск
6 июня, 22:36
1) выводим три переменные типа инт (незабываем про импорты) 2) ЕСЛИ (сравниваем, что СУММА каждых ДВУХ сторон БОЛЬШЕ по отношению к ТРЕТЬЕЙ) (в одну строку через &&) 3) сисаут (треугольник существует) 4) элс 5) сисаут (треугольник не существует)
Александр7 уровень, Санкт-Петербург
4 июня, 22:42
task0415 - "Треугольник существует только тогда, когда сумма двух его сторон больше третьей." - это же False!!!! Вспомните теорему Пифагора с²=a²+b², то есть сумма катетов равна гипотенузе!
5 июня, 19:10
с²=a²+b² верно только для прямоугольного треугольника. В нашем случае достаточным условием для существования треугольника является условие (a+b > c || a+c > b || b+c > a) wikipedia
Bogdan9 уровень
16 июня, 19:17
Не сумма катетов, а сумма квадратов катетов
Прыгун19 уровень
28 мая, 08:50
Ребят, так мы че, решили Scanner вообще не использовать?
Bogdan9 уровень
16 июня, 19:19
Тоже так подумал, и решил задание через Scanner
Lou Ashby4 уровень, Владимир
20 июля, 16:54
хороший вопрос однако!
Serggbobrov16 уровень, Гродно
24 мая, 13:09
if(a<b+c && b<a+c && c<a+b) { sout} else { sout } успехов!
akimaki4 уровень
21 мая, 03:25
В 1 короткую строчку.
System.out.print((a+b)>c&(c+b)>a&(a+c)>b ? "Треугольник существует.":"Треугольник не существует.");
Anton Sakara4 уровень, Москва
11 мая, 14:57
Что не так не пойму