Предмет: Информатика,
автор: realdowl
На основе рекурсивного алгоритма построить изображение(в паскале). Программа, выполняющая построение, должна быть инвариантна относительно начальных координат и числа итераций., изобр ниже
Умоляю, помогите с этим заданием срочненько нужно(
Приложения:
Ответы
Автор ответа:
0
PascalABC.NET 3.4.0, сборка 1670 от 23.05.2018
Внимание! Если программа не работает, обновите версию!
uses GraphABC;
procedure Figure(n,a:integer; lu:Point);
begin
var rl:=new Point(lu.X+a, lu.Y+a);
DrawRectangle(lu.X,lu.Y,rl.X,rl.Y);
var ll:=new Point(lu.X,rl.Y);
var um:=new Point(lu.X+a div 2,lu.Y);
Polyline(ll,um,rl);
lu.X+=a div 4; lu.Y+=a div 2;
if n>1 then Figure(n-1,a div 2,lu)
end;
begin
var (w,h):=(800,600); // размер окна
SetWindowSize(w,h);
var a:=new Point(150,50); // левый верхний угол
Figure(3,500,a); // число точек, длина стороны, левый верхний угол
end.
Внимание! Если программа не работает, обновите версию!
uses GraphABC;
procedure Figure(n,a:integer; lu:Point);
begin
var rl:=new Point(lu.X+a, lu.Y+a);
DrawRectangle(lu.X,lu.Y,rl.X,rl.Y);
var ll:=new Point(lu.X,rl.Y);
var um:=new Point(lu.X+a div 2,lu.Y);
Polyline(ll,um,rl);
lu.X+=a div 4; lu.Y+=a div 2;
if n>1 then Figure(n-1,a div 2,lu)
end;
begin
var (w,h):=(800,600); // размер окна
SetWindowSize(w,h);
var a:=new Point(150,50); // левый верхний угол
Figure(3,500,a); // число точек, длина стороны, левый верхний угол
end.
Приложения:
Похожие вопросы
Предмет: Английский язык,
автор: maxpayne4385
Предмет: Математика,
автор: Аноним
Предмет: Русский язык,
автор: samira36767876677
Предмет: Математика,
автор: Тахмина27