Определить существование треугольника - C (СИ)
Формулировка задачи:
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int a, b, c, t1, t2; system ("chcp 1251 > nul"); printf("Введите длины трёх отрезков:\n", a, c, b); scanf("%d\n%d\n%d", &a,&b,&c); { if (a+b>c && a+c>b && c+b>a) printf("Построение треугольника из этих отрезков возможно!\n"); else printf("Построение треугольника из этих отрезков невозможно!\n" ); } { if (a>b && a>c) printf("\n",a, a*a, t1=a*a, t2=b*b+c*c ); else if (a<b && b>c) printf("\n", b*b, t1=b*b, t2=a*a+c*c); else printf("\n", c*c, t1=c*c, t2=a*a+b*b); } { if (a+b<c || a+c<b || c+b<a) printf("\n"); else if (t1>t2) printf("Тупоугольный треугольник.\n"); else if(t1<t2) printf("Остроугольный треугольник.\n"); else printf("Прямоугольный треугольник.\n"); } system("pause"); return 0; }
Решение задачи: «Определить существование треугольника»
#include <stdio.h> void IsTriangle(double a, double b, double c); main() { } void IsTriangle(double a, double b, double c) { double x,y,z; if(a > b)x=a,y=b,z=c; else x=b,y=a,z=c; if(c > x)x=c,y=a,z=b; if(1 > fabs((x*x-(y*y+z*z))/(-2*y*z)) > 0) printf("Triangle is"); else printf("What a shit you gave me?!"); }
Объяснение кода листинга программы
В этом коде определена функция с именем IsTriangle, которая принимает три аргумента типа double — a, b и c. Эта функция проверяет, является ли треугольник со сторонами a, b и c прямоугольным (имеет форму прямоугольного треугольника).
В функции main() нет никакого кода, поэтому она пуста.
В функции IsTriangle() сначала определяются три переменные типа double — x, y и z. Затем происходит перестановка значений переменных a, b и c в переменные x, y и z соответственно. Это делается для того, чтобы самый большой угол треугольника был в первой переменной (x).
Далее происходит проверка: если c больше x, то происходит перестановка значений переменных x, y и z. Это нужно для того, чтобы самый большой угол треугольника был во второй переменной (y).
Затем происходит вычисление значения выражения (xx-(yy+zz))/(-2y*z) и проверка его на положительность. Если это значение больше 1, то треугольник является прямоугольным, и в консоль выводится сообщение Triangle is
. В противном случае выводится сообщение What a shit you gave me?!
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д