Сформировать точку, движущуюся по отрезку в обоих направлениях - QBasic

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

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

Сформировать точку, движущуюся по отрезку в обоих направлениях. Координаты начала и конца отрезка задаются с клавиатуры.

Решение задачи: «Сформировать точку, движущуюся по отрезку в обоих направлениях»

textual
Листинг программы
CLS
INPUT "Vvedite X1: ", x1
INPUT "Vvedite Y1: ", y1
INPUT "Vvedite X2: ", x2
INPUT "Vvedite Y2: ", y2
 
Dln = SQR((x2 - x1) ^ 2 + (y2 - y1) ^ 2)
IF Dln = 0 THEN END
Act = 1: Viz = 0: Stp = 1 / Dln
SCREEN 7, , Act, Viz
 
DO: t = TIMER: WHILE t > TIMER: WEND
   CLS 1
   p = p + Stp
   IF p > 1 THEN p = 2 - p: Stp = -Stp
   IF p < 0 THEN p = -p: Stp = -Stp
     LINE (x1, y1)-(x2, y2), 8
     PSET (x1 * p + x2 * (1 - p), y1 * p + y2 * (1 - p)), 15
   SWAP Act, Viz    '  Флип
   SCREEN , , Act
   SCREEN , , Act, Viz
   WAIT &H3DA, 8
LOOP WHILE INKEY$ = ""

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

  1. В первой части кода пользователю предлагается ввести координаты двух точек.
  2. Затем вычисляется длина отрезка между этими точками (Dln). Если точки совпадают, то выводится сообщение об ошибке и происходит выход из программы.
  3. Инициализируются переменные Act, Viz и Stp. Act и Viz используются для обмена значениями, а Stp — для установки шага.
  4. Выводится сообщение с номером точки (Act) и визуальное представление точки (Viz).
  5. Запускается основной цикл, который выполняется до тех пор, пока не будет нажата клавиша.
  6. В начале каждого кадра цикла выполняется очистка экрана и обновление текущего положения визуальной точки.
  7. Переменная p используется для вычисления нового положения визуальной точки и обновляется каждый кадр.
  8. Вычисляется новое положение визуальной точки путем линейной интерполяции между двумя точками.
  9. Линия между двумя точками рисуется с помощью функции LINE.
  10. Функция PSET используется для рисования визуальной точки в новом положении.
  11. Значения переменных Act и Viz меняются местами, чтобы показать, что точка движется.
  12. Выводится сообщение с номером точки (Act).
  13. Выводится сообщение с визуальным представлением точки (Viz).
  14. Программа ожидает нажатия клавиши.
  15. Если клавиша не нажата, программа продолжает работу.

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


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

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

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