Цель: Разработать алгоритм и программу решения прикладной задачи – построения правильного многоугольника с заданным числом вершин.
Задание: Построить правильный n -угольник, количество углов которого задано и вводиться через пользовательский интерфейс.
Математическая модель:
Алгоритм: Блок-схема
Код программы:
const r = 50;
var h, w, h2, w2, n, xsc, ysc, i: integer;
a,da, b,x,y:real;
begin
h:= Image1.Height;
w:= Image1.Width;
h2:= round(h/2);
w2:= round(w/2);
//ox, oy
Image1.Canvas.Pen.Color:=clgreen;
Image1.Canvas.Rectangle(0,0,500,500);
Image1.Canvas.MoveTo(0, h2);
Image1.Canvas.LineTo(w, h2);
Image1.Canvas.MoveTo(w2, 0);
Image1.Canvas.LineTo(w2, h);
Image1.Canvas.Pen.Color:=clred;
Val(Edit1.Text,n);
da:=(2*pi)/n;
x:= r*cos(0);
y:= r*sin(0);
xsc:=round(w2+x);
ysc:=round(h2-y);
Image1.Canvas.MoveTo(xsc, ysc);
for i:=1 to n+1 do
begin
x:=r*cos(a);
y:=r*sin(a);
xsc:= round(w2+x);
ysc:= round(h2-y);
Image1.Canvas.LineTo(xsc, ysc);
a:=a+da;
end;
Комментариев нет:
Отправить комментарий