Движение шарика вдоль заданной линии с регулируемой скоростью - Pascal ABC

Узнай цену своей работы

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

помогите построить графиг плиз))программа движения шарика вдоль заданной линии с регулируемой скоростью. y=-x^2+3

Решение задачи: «Движение шарика вдоль заданной линии с регулируемой скоростью»

textual
Листинг программы
uses graphABC,crt;
var y0:integer;
procedure grafik;
var x,y:integer;
begin
x:=0;
moveto(x,y0-round((-x*x+3)/1000));
while x<=windowwidth do
 begin
  y:=y0-round((-x*x+3)/1000);
  lineto(x,y);
  x:=x+5;
 end;
end;
var x,y,z:integer;
    c:char;
begin
hidecursor;
y0:=20;
x:=10;
z:=200;
lockdrawing;
repeat
clearwindow;
textout(150,windowheight-20,'Стрелка влево - быстрее, вправо-медленние');
grafik;
circle(x,y0-round((-x*x+3)/1000),10);
if keypressed then
 begin
  c:=readkey;
  case c of
  #77:z:=z-30;
  #75:z:=z+30;
  end;
 end;
delay(z);
x:=x+5;
redraw
until x>=windowwidth-20;
end.

Объяснение кода листинга программы

  1. Объявлены переменные y0, x, y, z, c типа integer и графический режим использования ABC.
  2. Инициализированы переменные y0, x, z значением 20, 10 и 200 соответственно.
  3. Активирован режим отладки, чтобы можно было наблюдать движение шарика.
  4. Задана функция grafik, которая рисует график движения шарика вдоль линии.
  5. В основной программе объявлены и инициализированы переменные x, y, z, c.
  6. Нарисована стрелка направления движения шарика.
  7. Выполняется цикл, который повторяется до тех пор, пока x меньше или равно ширине окна минус 20.
  8. Внутри цикла выполняется функция grafik для отображения движения шарика.
  9. Нарисована окружность в месте положения шарика.
  10. Проверяется, была ли нажата клавиша.
  11. Если была нажата клавиша, то считывается значение этой клавиши и выполняется соответствующее действие.
  12. Задержка в 30 миллисекунд для создания эффекта скорости.
  13. Значение x увеличивается на 5.
  14. Окно перерисовывается.
  15. Цикл продолжается до тех пор, пока x меньше или равно ширине окна минус 20.
  16. Код не содержит ошибок и не требует обработки исключений.

ИИ поможет Вам:


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

Оцени полезность:

8   голосов , оценка 4.25 из 5
Похожие ответы