• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Помогите доделать.

darkdragon

Новые
Регистрация
8 Апр 2010
Сообщения
38
Реакции
0
Баллы
0
Помогите доделать.

надо чтобы планеты крутились одновременно вокруг солнца...а умну они не одновременно и телепортируются...я не могу понять где ошибка именно со здвигом...

program planet_ubi;
uses graph,crt;
var y2,x2,i,y,x,d,m,xc,t,yc,r,x1,y1:integer;
begin
xc:=320;
yc:=240;
r:=55;
initgraph(d,m,'');
setfillstyle(1,14);
circle(xc,yc,r);
floodfill(xc,yc-1,15);
circle(xc,yc,r+55);
circle(xc,yc,y+200);
x:=xc+142;
y:=yc+142;
x2:=xc+77;
y2:=yc+77;
repeat
for i:=0 to 360 do begin
t:=round(i*pi/180);
x1:=round(xc+(x-xc)*cos(t)+(y-yc)*sin(t));
y1:=round(yc+(y-yc)*cos(t)-(x-xc)*sin(t));
setcolor(4);
circle(x1,y1,15);
delay(50);
setcolor(0);
circle(x1,y1,15);
end;
for i:=0 to 360 do begin
t:=round(i*pi/180);
x1:=round(xc+(xc-x2)*cos(t)+(y2-yc)*sin(t));
y1:=round(yc+(yc-y2)*cos(t)-(x2-xc)*sin(t));
setcolor(2);
circle(x1,y1,10);
delay(50);
setcolor(0);
circle(x1,y1,10);
end;
until keypressed;
end.
 
все доделал ...теперь надо только одновременно их пустить

program planet_ubi;
uses graph,crt;
var h,y2,x2,i,y,x,d,m,xc,yc,r,x1,y1:integer;
t,o:real;
begin
xc:=320;
yc:=240;
r:=55;
initgraph(d,m,'');
setfillstyle(1,14);
circle(xc,yc,r);
floodfill(xc,yc-1,15);
circle(xc,yc,r+55);
circle(xc,yc,r+145);
x:=xc+142;
y:=yc+142;
x2:=xc+77;
y2:=yc+77;
repeat
for i:=0 to 360 do begin
t:=(i*pi/180);
x1:=round(xc+(x-xc)*cos(t)+(y-yc)*sin(t));
y1:=round(yc+(y-yc)*cos(t)-(x-xc)*sin(t));
setcolor(4);
circle(x1,y1,15);
delay(50);
setcolor(15);
circle(xc,yc,r+145);
setcolor(0);
circle(x1,y1,15);
end;
for h:=0 to 360 do begin
o:=(h*pi/180);
x1:=round(xc+(xc-x2)*cos(o)+(y2-yc)*sin(o));
y1:=round(yc+(yc-y2)*cos(o)-(x2-xc)*sin(o));
setcolor(2);
circle(x1,y1,10);
delay(50);
setcolor(15);
circle(xc,yc,r+55);
setcolor(0);
circle(x1,y1,10);
end;
until keypressed;
end.
 
Последнее редактирование:
все сделал ))))
помогите устранить моргание на экране!

program planet_ubi;
uses graph,crt;
var h,y2,x2,i,y,x,d,m,xc,yc,r,x1,y1:integer;
t,o:real;
begin
xc:=320;
yc:=240;
r:=55;
initgraph(d,m,'');
setfillstyle(1,14);
circle(xc,yc,r);
floodfill(xc,yc-1,15);
circle(xc,yc,r+55);
circle(xc,yc,r+145);
x:=xc+142;
y:=yc+142;
x2:=xc+77;
y2:=yc+77;
repeat
for i:=0 to 360 do begin
t:=(i*pi/180);
x1:=round(xc+(x-xc)*cos(t)+(y-yc)*sin(t));
y1:=round(yc+(y-yc)*cos(t)-(x-xc)*sin(t));
setcolor(4);
circle(x1,y1,15);
delay(50);
setcolor(15);
circle(xc,yc,r+145);
setcolor(0);
circle(x1,y1,15);
x1:=round(xc+(xc-x2)*cos(t)+(y2-yc)*sin(t));
y1:=round(yc+(yc-y2)*cos(t)-(x2-xc)*sin(t));
setcolor(2);
circle(x1,y1,10);
delay(50);
setcolor(15);
circle(xc,yc,r+55);
setcolor(0);
circle(x1,y1,10);
end;
until keypressed;
end.
 
все всем огромное спасибо все написал!
 
Назад
Сверху