Var a,s,h,Rv,Ro:real;
v:integer;
procedure raz(a:real;var s,h,Rv,Ro:real);
begin
s:= sqrt(3)*sqr(a)/4;
Rv:= a/(2*sqrt(3));;
Ro:= a/sqrt(3);
h:= sqrt(sqr(a)-sqr(a/2));
end;
begin
write('Введите вариант расчета равнестороннего треугольника');
Readln(v);
case v of
1: begin
write('Введите a сторону треугольника');
Readln(a);
raz(a,s,h,Rv,Ro);
end;
2: begin
write('Введите s площадь треугольника');
Readln(s);
a:= sqrt(s*4/sqrt(3));
raz(a,s,h,Rv,Ro);
end;
3: begin
write('Введите h высоту треугольника');
Readln(h);
a:= sqrt(sqr(h)*4/3);
raz(a,s,h,Rv,Ro);
end;
4: begin
write('Введите Rv вписанной окружности треугольника');
Readln(Rv);
a:= Rv*2*sqrt(3);
raz(a,s,h,Rv,Ro);
end;
5: begin
write('Введите Ro описанной окружности треугольника');
Readln(Ro);
a:= Ro*sqrt(3);
raz(a,s,h,Rv,Ro);
end;
end;
writeln('Сторона = ',a:6:4);
writeln('Площадь =',s:6:4);
writeln('Высота =',h:6:4);
writeln('Радиус вписанной окружности =',Rv:6:4);
writeln('Радиус описанной окружности =',Ro:6:4);
end.