Вычисление площадей и периметров фигур по формулам на языке C

Обновлено: 28.09.2025

Задача. Вычислить периметр (P) и площадь (S)

Длины сторон и радиус вводятся пользователем.

Формулы для треугольника (где p - полупериметр):

P = a + b + c,    
    S
    =
    
        p
        (
        p
        -
        a
        )
        (
        p
        -
        b
        )
        (
        p
        -
        c
        )
    

Формулы для прямоугольника:

P = 2(a + b),    S = ab

Формулы для круга:

P = 2πr,    S = πr2

Пояснение. Для возведения в квадрат и для извлечения корня понадобятся функции pow() и sqrt(), которые имеются в библиотеке math.h. Однако в ней нет константы числа π.

В ряде ОС при компиляции с помощью gcc необходимо в конце команды указать ключ -lm из-за использования библиотеки math.h.

#include <stdio.h>
#include <math.h>

#define PI 3.14159

int main() {
    int a, b, c;
    float p, S;

    printf("Длины сторон треугольника: ");
    scanf("%d%d%d", &a,&b,&c);
    p = (a+b+c)/2;
    S = sqrt(p*(p-a)*(p-b)*(p-c));
    printf("P = %d; S = %.2f\n\n", (a+b+c), S);

    printf("Ширина и высота прямоугольника: ");
    scanf("%d%d", &a,&b);
    printf("P = %d; S = %d\n\n", (a+b)*2, a*b);

    printf("Радиус круга: ");
    scanf("%d", &a);
    printf("P = %.2f; S = %.2f\n", 2*PI*a, PI*pow(a,2));
}
Длины сторон треугольника: 4 4 6
P = 14; S = 7.94

Ширина и высота прямоугольника: 2 5
P = 14; S = 10

Радиус круга: 3
P = 18.85; S = 28.27