Вычисление геометрической задачи - QBasic
Формулировка задачи:
Здравствуйте, это снова я, начал писать отчет по практике и столкнулся с проблемой решения одной задачи, не знаю какую формулу или способ решения использовать в этой задаче:
Задан вектор с координатами (х, у, z). Найти углы наклона этого вектора к координатным осям.
P.S. Думаю раз нашел ошибку в одном из первых заданий это не моя темаРешение задачи: «Вычисление геометрической задачи»
textual
Листинг программы
CLS CONST pi = 3.141593 CONST p2 = pi / 2 INPUT "X,Y,Z = "; x, y, z R = SQR(x ^ 2 + y ^ 2 + z ^ 2) cosx = x / R cosy = y / R cosz = z / R fx = p2 - ATN(cosx / SQR(1 - cosx ^ 2)) fy = p2 - ATN(cosy / SQR(1 - cosy ^ 2)) fz = p2 - ATN(cosz / SQR(1 - cosz ^ 2)) PRINT "fx, fy, fz ="; fx; fy; fz 'PRINT cosx ^ 2 + cosy ^ 2 + cosz ^ 2 ' Это должно быть равным 1 END
Объяснение кода листинга программы
- Объявлены константы
piиp2равные 3.141593 и pi/2 соответственно. - Введены переменные
x,y,zс помощью функцииINPUT. - Вычислен радиус сферы
Rпо формулеSQR(x^2 + y^2 + z^2). - Вычислены коэффициенты перед координатами
cosx,cosy,coszпо формулеx/R,y/R,z/Rсоответственно. - Вычислены значения функций
fx,fy,fzпо формулеp2 - ATN(cosx/SQR(1-cosx^2),p2 - ATN(cosy/SQR(1-cosy^2),p2 - ATN(cosz/SQR(1-cosz^2))соответственно. - Выведено значение функций
fx,fy,fzна экран с помощью функцииPRINT. - В комментарии указано, что результат вычисления
cosx^2 + cosy^2 + cosz^2должен быть равен 1.