Определить треугольник
Вводятся три целых числа. Определить, может ли существовать треугольник с такими сторонами, и если да, то какой он: разносторонний, равнобедренный или равносторонний?
Для решения данной задачи следует воспользоваться вложенными конструкциями if-else и логическими операторами "И" и "ИЛИ".
Алгоритм решения может быть следующим:
- Сначала выясняется, существует ли треугольник вообще. Если он существует, то программа продолжает выполняться дальше.
- Первым делом проверим, что ни одна из сторон не равна другой. Если это так, то треугольник разносторонний. Программа завершится на этом этапе. Если это не так, то программа перейдет к третьей проверке.
- Поскольку во втором пункте был исключен вариант, что все стороны разные, то либо они все равны друг другу, либо существует какая-то пара равных сторон. Проще всего проверить, что все стороны равны друг другу. В таком случае треугольник равносторонний. Если же это не так, то остается только один вариант - треугольник равнобедренный.
#include <stdio.h> main() { int a,b,c; printf("a="); scanf("%d", &a); printf("b="); scanf("%d", &b); printf("c="); scanf("%d", &c); if (a+b <= c || a+c <= b || b+c <= a) printf("Треугольник не существует.\n"); else if (a != b && a != c && b != c) printf("Разносторонний\n"); else if (a == b && b == c) printf("Равносторонний\n"); else printf("Равнобедренный\n"); }