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

Тема: 
Линейные алгоритмы

Вычислить площадь и периметр

  • треугольника по данным трем сторонам,
  • прямоугольника по данным ширине и высоте,
  • круга по заданному радиусу.

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

В библиотеке math.h нет константы числа π.

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

#include <stdio.h>
#include <math.h>
 
#define PI 3.14159
 
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