Движение точки по контуру воображаемого треугольника - QBasic

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

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

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

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

textual
Листинг программы
  1. CLS
  2. SCREEN 11
  3.  
  4. x1 = 100
  5. y1 = 200
  6. x2 = 300
  7. y2 = 400
  8. x3 = 500
  9. y3 = 100
  10.  
  11. x = x1
  12. y = y1
  13. dx = 1
  14. dy = 1
  15.  
  16. k1 = (y2 - y1) / (x2 - x1)
  17. k2 = (y3 - y2) / (x3 - x2)
  18. k3 = (y1 - y3) / (x1 - x3)
  19.  
  20. PRINT "Press any key"
  21.  
  22. DO
  23.    LINE (x1, y1)-(x2, y2)
  24.    LINE (x2, y2)-(x3, y3)
  25.    LINE (x3, y3)-(x1, y1)
  26.  
  27.    IF x < x2 AND s = 0 THEN
  28.       x = x + dx
  29.       y = y1 + k1 * (x - x1)
  30.       CIRCLE (x, y), 3
  31.  
  32.       FOR i = 1 TO 10000: NEXT
  33.  
  34.       CIRCLE (x, y), 3, 0
  35.    ELSEIF x < x3 AND s = 0 THEN
  36.       x = x + dx
  37.       y = y2 + k2 * (x - x2)
  38.       CIRCLE (x, y), 3
  39.  
  40.       FOR i = 1 TO 10000: NEXT
  41.  
  42.       CIRCLE (x, y), 3, 0
  43.       IF x3 - x < 1 THEN s = 1
  44.    ELSEIF x > x1 THEN
  45.       x = x - dx
  46.       y = y3 + k3 * (x - x3)
  47.       CIRCLE (x, y), 3
  48.  
  49.       FOR i = 1 TO 10000: NEXT
  50.  
  51.       CIRCLE (x, y), 3, 0
  52.       IF x - x1 < 2 THEN s = 0
  53.    END IF
  54.  
  55. LOOP UNTIL INKEY$ <> ""
  56. END

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

  1. Объявлены переменные x1, y1, x2, y2, x3, y3 для координат вершин треугольника.
  2. Задаются начальные координаты x1,y1 для точки.
  3. Вычисляются коэффициенты наклона прямых, соединяющих вершины треугольника с координатами точек.
  4. Выводится сообщение Press any key и начинается цикл выполнения программы.
  5. В цикле последовательно соединяются линиями все вершины треугольника.
  6. Проверяется условие, при котором текущая точка находится между двумя вершинами и не достигла конечной точки.
  7. Если условие выполняется, то текущая точка перемещается к следующей вершине по прямой, задаются новые координаты для точки.
  8. Повторяется проверка условия для следующей вершины.
  9. Если условие не выполняется, то текущая точка перемещается к предыдущей вершине по прямой, задаются новые координаты для точки.
  10. Повторяется проверка условия для предыдущей вершины.
  11. Если условие не выполняется, то текущая точка перемещается к следующей вершине по прямой, задаются новые координаты для точки.
  12. Повторяется проверка условия для следующей вершины.
  13. Если условие не выполняется, то текущая точка перемещается к предыдущей вершине по прямой, задаются новые координаты для точки.
  14. Повторяется проверка условия для предыдущей вершины.
  15. Если условие не выполняется, то текущая точка перемещается к следующей вершине по прямой, задаются новые координаты для точки.
  16. Повторяется проверка условия для следующей вершины.
  17. Если условие не выполняется, то текущая точка перемещается к предыдущей вершине по прямой, задаются новые координаты для точки.
  18. Повторяется проверка условия для предыдущей вершины.
  19. Если условие не выполняется, то текущая точка перемещается к следующей вершине по прямой, задаются новые координаты для точки.
  20. Повторяется проверка условия для следующей вершины.

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


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

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

9   голосов , оценка 4.556 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы