Вычислить площадь треугольника - C (СИ) (148967)
Формулировка задачи:
Заданные вещественные числа, которые определяют отрезки a, b, c и d. Для каждой тройки тех отрезков, из которых можно построить треугольник, вычислить площадь данного треугольника. Вычисление площади треугольника описать с помощью функции языка С.
Вот что написал:
Знаю что тут много лишнего, но я не могу понять как можно решить проще.
#include <stdio.h> #include <conio.h> #include <Windows.h> #include <math.h> float func(void) { int a; int b; int c; int d; float S,p; printf("Введіть сторони трикутника\n"); scanf("%d%d%d%d", &a,&b,&c,&d); if (a > 0 && b > 0 && c > 0 && d < 0) { //float S; p = (a + b + c)/2; S = sqrt(p*(p - a)*(p - b)*(p - c)); goto label; } if (a > 0 && b > 0 && c < 0 && d > 0 ) { //float S; p = (a + b + d)/2; S = sqrt(p*(p - a)*(p - b)*(p - d)); goto label; } if (a > 0 && b < 0 && c > 0 && d > 0) { //float S; p = (a + c + d)/2; S = sqrt(p*(p - a)*(p - c)*(p - d)); goto label; } if (a < 0 && b > 0 && c > 0 && d > 0 ) { //float S; p = (b + c + d)/2; S = sqrt(p*(p - b)*(p - c)*(p - d)); goto label; } label : return S; } int main(void) { SetConsoleCP(1251); SetConsoleOutputCP(1251); func(); float S; printf("Площа = %f", S); printf("Для продовження нажміть на будь-яку клавішу...."); getch(); return 0; }
Решение задачи: «Вычислить площадь треугольника»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #include <Windows.h> #include <math.h> float sq(float a, float b, float c) { float p = (a + b + c)/2; return sqrt(p*(p - a)*(p - b)*(p - c)); } int main(void) { SetConsoleCP(1251); SetConsoleOutputCP(1251); float a, b, c, d; printf("Введіть сторони трикутника\n"); scanf("%f%f%f%f", &a,&b,&c,&d); printf("Площа = "); if (a > 0 && b > 0 && c > 0) printf("%f ", sq(a, b, c)); if (a > 0 && b > 0 && d > 0 ) printf("%f ", sq(a, b, d)); if (a > 0 && c > 0 && d > 0) printf("%f ", sq(a, c, d)); if (b > 0 && c > 0 && d > 0 ) printf("%f ", sq(b, c, d)); printf("Для продовження нажміть на будь-яку клавішу...."); getch(); return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д