Определить вид треугольника: прямоугольный, остроугольный или тупоугольный - C (СИ)
Формулировка задачи:
Даны вещественные положительные числа a,b,c. Если существует треугольник со сторонами a,b,c, то: определить его вид(прямоугольный, остроугольный или тупоугольный)
Решение задачи: «Определить вид треугольника: прямоугольный, остроугольный или тупоугольный»
textual
Листинг программы
#include <stdlib.h> #include <stdio.h> #include <locale.h> int main() { setlocale(LC_ALL,"rus"); int a,b,c,max; puts("Сторона а= "); //Вводим стороны scanf("%d",&a); puts("\nСторона b= "); scanf("%d",&b); puts("\nСторона c= "); scanf("%d",&c); while(a+b<c || b+c<a || c+a<b) //Проверка { printf("\nТреугольника с введенными сторонами не существует\nПопробуйте еще раз\n"); puts("\nСторона а= "); scanf("%d",&a); puts("\nСторона b= "); scanf("%d",&b); puts("\nСторона c= "); scanf("%d",&a); } if(c>a&&c>b) //Ищем максимальную сторону max=c; if(a>c&&a>b) { max=a; a=c; } if(b>a&&b>c) { max=b; b=c; } if((a*a+b*b)==(max*max)) //определяем треугольник printf("Треугольник прямоугольный"); if((a*a+b*b)>(max*max)) printf("Треугольник тупоугольный"); if((a*a+b*b)<(max*max)) printf("Треугольник остроугольный"); return 0; }
Объяснение кода листинга программы
- Ввод сторон треугольника с помощью функции scanf.
- Проверка на существование треугольника с помощью условия a + b < c || b + c < a || c + a < b.
- Если треугольник не существует, выводится сообщение об ошибке и программа возвращается к шагу 2.
- Поиск максимальной стороны треугольника с помощью условий if.
- Определение типа треугольника с помощью условий if и вывода соответствующего сообщения.
- Возврат значения 0, означающего успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д