Вычислить длину стороны a и площадь S восьмиугольника, который или вписан в окружность с радиусом R, или описан вокруг нее - Pascal

Узнай цену своей работы

Формулировка задачи:

Вычислить длину стороны a и площадь S восьмиугольника, который или вписан в окружность с радиусом R, или описан вокруг нее.

Помогите пожалуйста)

Решение задачи: «Вычислить длину стороны a и площадь S восьмиугольника, который или вписан в окружность с радиусом R, или описан вокруг нее»

textual
Листинг программы
uses crt;
function S(t:real):real;
begin
S:=(2+2*sqrt(2))*t*t;
end;
procedure Opis(r:real;var t:real);
begin
write('Введите радиус описанной окружности R=');
readln(r);
t:=r/(1+sqrt(2)/2);
writeln('Длина стороны=',t:0:2,' площадь=',S(t):0:2);
readln
end;
procedure Vpis(r:real;var t:real);
begin
write('Введите радиус вписанной окружности r=');
readln(r);
t:=2*r/(1+sqrt(2));
writeln('Длина стороны=',t:0:2,' площадь=',S(t):0:2);
readln
end;
var r,a:real;
    w:char;
begin
clrscr;
repeat
clrscr;
writeln('Выберите вид восьмиугольника:');
writeln('1-впмсанный');
writeln('2-описанный');
writeln('другое-выход');
readln(w);
case w of
'1':Vpis(r,a);
'2':Opis(r,a);
else exit;
end;
until not(w in ['1','2']);
end.

Объяснение кода листинга программы

  1. В функции S(t) вычисляется площадь восьмиугольника.
  2. Переменная t используется для хранения радиуса окружности, для которой вычисляется площадь.
  3. В процедуре Opis(r,var t) запрашивается радиус описанной окружности, затем переменная t инициализируется этим радиусом, после чего вычисляется длина стороны и площадь восьмиугольника.
  4. В процедуре Vpis(r,var t) запрашивается радиус вписанной окружности, затем переменная t инициализируется этим радиусом, после чего вычисляется длина стороны и площадь восьмиугольника.
  5. Переменные r и a используются для хранения радиуса и длины стороны соответственно.
  6. Переменная w используется для хранения введенного пользователем значения, которое определяет тип восьмиугольника.
  7. В цикле repeat-until выбирается тип восьмиугольника.
  8. При выборе '1' выполняется процедура Vpis(r,a), при выборе '2' - процедура Opis(r,a).
  9. Если введенное значение не равно '1' или '2', цикл прерывается.

Оцени полезность:

11   голосов , оценка 4.182 из 5
Похожие ответы