Ответы на вопрос:
Program corablik; uses graph, crt; var grdriver: integer; grmode: integer; errcode: integer; x,y,y0,a,b: integer; {a,b-переменные для линии моря, чтоб они не зависели от х,у} procedure more(a,b: integer); begin moveto(0,y0); setcolor(blue); for a: =0 to 680 do{слева направо рисуем синусоиду синего чвета} begin b: =y0-round(sin(a*pi/180)*30); {30-коэффициент масштабирования по оси х, чем больше, тем волна круче} lineto(a,b); end; end; begin grdriver : = detect; initgraph(grdriver, grmode, '..\bgi'); errcode : = graphresult; y0 : = 250; if errcode = grok then begin x: =600; while x> =0 do{лучше использовать цикл while, можно менять величину шага, что тоже влияет на скорость и частоту смены картинки} begin cleardevice; more(a,b); {рисуем волну} setcolor(white); {устанавливаем цвет кораблика} y: =y0-40-round(sin(x*pi/180)*30); {движемся по волне} moveto(x - 40, y + 20); lineto(x - 20, y + 40); lineto(x + 20, y + 40); lineto(x + 40, y + 20); lineto(x - 40, y + 20); moveto(x + 15, y + 20); lineto(x + 15, y - 40); lineto(x - 20, y + 20); lineto(x + 15, y + 20); delay(100); {нормальная скорость, если модули *.tpl не глючные как у вас, время должно быть в миллисекундах, а не в каких-нибудь наносекундах} x: =x-2; {шаг движения} end; end else writeln('graphics error: ', grapherrormsg(errcode)); settextstyle(0,0,3); {устанавливаем стиль шрифта} cleardevice; setcolor(red); outtextxy(200,240,'rejs zavershen! '); {выводим надпись} readln; closegraph; end.
Популярно: Информатика
-
MarinaDonut64820.04.2023 19:27
-
nano103029.07.2022 12:51
-
Крутая19502319.12.2022 17:12
-
BOYECH27.03.2020 11:48
-
aminatikhonova1217.02.2023 18:46
-
SaharaYo04.12.2021 17:35
-
irinawinchester66614.03.2021 19:11
-
danil6789643064329.03.2021 03:02
-
coolparschin2004.01.2021 09:34
-
proshamanfeed08.05.2020 07:38