лаба3
.docxФормулировка задачи №9
Формализация задания
Разработка алгоритмов решения задач
Разработка схемы иерархии процедур
Формулировка задачи №9
Определите площади правильных n-угольников (10-угольника; 50-угольника;100-угольника), вписанных в окружность радиуса R.
Формализация задания
Для решения данной задачи воспользуемся формулами:
a = 2Rsin – нахождение стороны
r = Rcos – радиус вписанной окружности
– площадь n-угольника
Разработка алгоритма решения задач
Начнем проектирование алгоритма методом «сверху вниз» с учетом того,
что решение задачи реализуется с помощью алгоритмов простейшей линейной
структуры. На внешнем уровне алгоритм представляется в виде процедуры main с внутренним процессом Square. (рис. 1)
Start
main
Square
End
main
Рисунок 1 – Схема алгоритма main
Детализирую следующий уровень, мы раскрываем процесс Square. В него входят:
Сбор данных ( Input: R, n)
Алгоритмы вычисления элементов (Calc_EL)
Вывод данных ( Output: Calc_S)
Start
Square
1
Input:R,
n
Calc_EL
Output:Calc_S
End
Square
Рисунок 2 – Схема алгоритма Square
Процедуры Input и Output отвечают только за ввод и вывод данных, поэтому мы их не будем детализировать. Детализацию будем использовать в алгоритме Calc_EL (рис. 3)
Start
Calc_EL
Calc_r
Calc_a
Calc_S
End
Calc_EL
Рисунок 3 – Схема алгоритма Calc_EL
Углубляясь в процедуры Calc_r , Calc_a, Calc_S, мы видим формулы, в которые и подставим переменные.(рис. 4, рис. 5, рис. 6)
Start
Calc_S
Start
Calc_a
Start
Calc_r
End
Calc_a
End
Calc_S
End
Calc_r
Рисунок 4-Схема алгоритма Calc_r Рисунок 5- Схема алгоритма Calc_a Рисунок 6- Схема алгоритма Calc_s
Разработка схемы иерархии процедур
С помощью схем, изображенных ранее, мы можем с легкостью составить схему иерархии процедур. (рис. 7)
Рисунок 7 – Схема иерархии процедур для решения задачи