Помощь - Поиск - Пользователи - Календарь
Полная версия: Движение рисунка
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
b0b
последняя задача в этом году.
нужно, чтобы при нажатии на любую клавишу, на экране появлялась картинка, которая движется бесконечно. наподобии как в "арканоид" шарик отскакивает от стен. при нажатии на опр. клавишу, происходит завершение программы.

в теории догадываюсь, как можно сделать.
но на практике.. sad.gif.


program gr;
uses crt, graph;
var gd,gm:integer;
begin
clrscr;
repeat
gotoxy(10,13);
writeln('Laba9');
until keypressed;
gd:=detect;
initgraph(gd,gm,'d:\ftp\bp\bgi');
setcolor(green);
line(160,240,320,240);
line(160,230,320,230);

arc(160,235,90,270,5);
arc(320,220,260,330,10);
arc(323,230,260,330,10);

line(329,225,370,150);
line(332,235,372,168);

circle(389,157,20);

line(380,140,360,120);
line(400,140,420,120);

ellipse(250,198,0,360,70,30);
ellipse(263,204,0,360,24,18);

circle(380,155,5);
circle(398,155,5);
circle(380,155,2);
circle(398,155,2);

arc(389,165,180,0,8);



readln;
end.

b0b
repeat
if x>300 then napr:=-1;
if x<10 then napr:=1;
x:=x+napr;

надо у координат x менять ее координату
то есть у всех line(x+100,10,x+120,10); они и
будут двигатьсь
с задержкой delay(100);

until keypreset

чушь какая то получается sad.gif

хелп плз...
b0b
есть кто-нть живой-то? sad.gif
klem4
Цитата
есть кто-нть живой-то?


есть ... Биллиард
b0b
Цитата(klem4 @ 13.12.2005 22:32) *

есть ... Биллиард


а попроще.. sad.gif
volvo
Ну, а так:
Немного графики, Прыгающий шарик?
klem4
Ну или вот наверное супер простой вариант :

uses crt,graph;
var
gd,gm,x,y,dx,dy,r : integer;

begin
clrscr;
gd := detect;
initgraph(gd,gm,'');

r := 20;

x := GetMaxX div 2;
y := GetMaxY div 2;

circle(x,y,r);

dx := 3;
dy := -4;

repeat

if (r + x >= GetMaxX) or (r + x <=0) then dx := -dx;
if (r + y >= GetMaxY) or (r + y <=0) then dy := -dy;

x := x + dx;
y := y + dy;

circle(x,y,r);
delay(100);
cleardevice;

until keypressed;


end.


как-то так ...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.