Определите положение бруска относительно точки О через промежуток времени - QBasic
Формулировка задачи:
Нужно эту задачу запрограммировать.
В результате полученного толчка брусок начал скользить вверх по наклонной плоскости из точки О с начальной скоростью υ0 = 4,4 м/с. Определите положение бруска относительно точки О через промежуток времени t1 — 2 с после начала его движения, если угол наклона плоскости к горизонту α = 30°. Трение не учитывайте.
Решение задачи: «Определите положение бруска относительно точки О через промежуток времени»
textual
Листинг программы
DECLARE FUNCTION f! (t!) CLS CONST pi = 3.141593 CONST g = 9.81 CONST k = pi / 180 CONST a = 30 SCREEN 11 WINDOW (-2.4, 3.6)-(2.4, 0) dx = .4 * COS(a * k) dy = .4 * SIN(a * k) PRINT "Press any key" LINE (-2.4, 0)-(2.4, 2.77) SLEEP 0 FOR t = 0 TO 2 STEP .005 LINE (-2.4, 0)-(2.4, 2.77) S = f(t) x = S * COS(a * k) y = S * SIN(a * k) + 1.3856 x1 = x + dx y1 = y + dy x2 = x - dx y2 = y - dy x3 = x1 - dy y3 = y1 + dx x4 = x2 - dy y4 = y2 + dx LINE (x1, y1)-(x2, y2) LINE (x2, y2)-(x4, y4) LINE (x4, y4)-(x3, y3) LINE (x3, y3)-(x1, y1) FOR j = 1 TO 10000: NEXT LINE (x1, y1)-(x2, y2), 0 LINE (x2, y2)-(x4, y4), 0 LINE (x4, y4)-(x3, y3), 0 LINE (x3, y3)-(x1, y1), 0 NEXT t LINE (x1, y1)-(x2, y2) LINE (x2, y2)-(x4, y4) LINE (x4, y4)-(x3, y3) LINE (x3, y3)-(x1, y1) PRINT "S ="; f(2) END FUNCTION f (t) f = 4.4 * t - g * SIN(a * k) * t ^ 2 / 2 END FUNCTION
Объяснение кода листинга программы
В этом коде используется язык программирования QBasic. Вот список действий, которые в нём выполняются:
- Объявление функции f(t).
- Установка констант: — pi = 3.141593, — g = 9.81, — k = pi / 180, — a = 30.
- Отображение на экране окна размером 11 символов по 11 строк (SCREEN 11).
- Вычисление значений переменных dx и dy, которые используются для расчёта положения бруска (x и y) относительно начальной точки (0, 0). Для этого используются тригонометрические функции COS, SIN и SINH.
- Вывод на экран строки «Press any key» (LINE (-2.4, 0)-(2.4, 2.77)).
- Запуск цикла, который выполняет следующие действия:
— Вычисление значения переменной S (это будет длина бруска).
— Вычисление значений x и y (это будет положение бруска относительно начальной точки).
— Вычисление значений x1, y1, x2, y2, x3, y3, x4, y4 (это будут точки, через которые будет проходить линия).
— Отображение на экране четырёх линий, соединяющих точки x1, y1; x2, y2; x4, y4; x3, y3 (это будет график функции).
— Вывод на экран значения переменной S (PRINT
S =
; f(2)). - Определение функции f(t).
- Вычисление значения функции f(t) (это будет значение переменной S).
- Конец функции f(t).
- Конец цикла.
- Отображение на экране линий, соединяющих точки x1, y1; x2, y2; x4, y4; x3, y3 (это будет график функции).
- Вывод на экран значения переменной S (PRINT
S =
; f(2)). - Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д