Возвращение фигуры при анимации на стартовую позицию - Pascal ABC
Формулировка задачи:
Надо что бы круг после выполнения операции вернулся на место какую строчку добавить ?
Решение задачи: «Возвращение фигуры при анимации на стартовую позицию»
textual
Листинг программы
uses graphABC; var x, y, r: integer; sgn, n: integer; begin setwindowsize(500, 500); r := 20; x := 20; y := 20; setpencolor(clRed); setbrushcolor(clRed); lockdrawing; sgn := 1; n := 0; repeat while (x <= windowwidth - r) and (x >= r) do begin clearwindow; circle(x, y, r); sleep(40); x := x + 4 * sgn; y := y + 4 * sgn; redraw end; sgn := -sgn; inc(n); x := x + 4 * sgn; y := y + 4 * sgn; until n = 2; // счетчик проходов end.
Объяснение кода листинга программы
- В начале кода подключается библиотека graphABC.
- Переменные x, y, r и sgn инициализируются целочисленными значениями.
- Устанавливается размер окна приложения.
- Задаются начальные значения для x и y.
- Устанавливается цвет кисти и фона пера.
- Включена блокировка рисования.
- Задается значение переменной n.
- Запускается цикл повторений, который будет выполняться до тех пор, пока n не станет равным 2.
- Внутри цикла выполняется следующее:
- Очищается окно.
- Рисуется окружность с заданными параметрами x, y и r.
- Выполняется задержка, чтобы создать эффект анимации.
- Значение x и y увеличивается на 4 * sgn.
- Значение sgn меняется на -sgn.
- Увеличивается значение счетчика проходов n.
- По завершении цикла блокировка рисования отключается.