Нарисовать шляпку подсолнуха с логарифмическими спиралями - Turbo Pascal

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

Программа должна рисовать шляпку подсолнуха с логарифмическими спиралями. Этот код работает, но нужно чтобы получалось что-то типа того что на картинке. Помогите, пожалуйста, кто сможет.
uses graph;
var x0,y0,x,y,i:integer;
    a,b,t,f:real;
begin
initgraph(x,y,'');
x0:=getmaxX div 2;
y0:=getmaxY div 2;
setcolor(2);
circle(x0,y0,153);
a:=1;
b:=0.5;
f:=0;
for i:=1 to 12 do
 begin
  t:=0;
  repeat
   t:=t+0.001;
   x:=round(a*exp(b*(t))*cos(t+f));
   y:=round(a*exp(b*(t))*sin(t+f));
   putpixel(x0+x,y0-y,14);
  until t>3.2*pi;
  f:=f+pi/6;
 end;
readln
end.


textual

Код к задаче: «Нарисовать шляпку подсолнуха с логарифмическими спиралями - Turbo Pascal»

uses graph;
var x0,y0,x,y,i:integer;
    a,b,t,f:real;
begin
initgraph(x,y,'');
x0:=getmaxX div 2;
y0:=getmaxY div 2;
setbkcolor(15);
a:=1;
b:=0.5;
f:=0;
for i:=1 to 21 do
 begin
  t:=0;
  repeat
   t:=t+0.01;
   x:=round(a*exp(b*(t))*cos(t+f));
   y:=round(a*exp(b*(t))*sin(t+f));
   putpixel(x0+x,y0-y,8);
  until t>3.2*pi;
  f:=f+2*pi/21;
 end;
for i:=1 to 34 do
 begin
  t:=0;
  repeat
   t:=t+0.01;
   x:=round(a*exp(b*(t))*sin(t+f));
   y:=round(a*exp(b*(t))*cos(t+f));
   putpixel(x0+x,y0-y,8);
  until t>3.2*pi;
  f:=f+2*pi/34;
 end;
setcolor(2);
circle(x0,y0,155);
readln
end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

6   голосов, оценка 3.333 из 5

Источник