Перехресне твір двох тривимірних векторів і це єдиний вектор таким чином, що:
є ортогональним і для і
Величина дорівнює площі паралелограма, утвореного і
Напрямки , , і , в такому порядку, слідувати правилу правої руки .
Існує кілька еквівалентних формул для перехресного продукту, але одна така:
де , , і - одиничні вектори в першому, другому та третьому вимірах.
Виклик
З огляду на два 3D-вектори, напишіть повну програму або функцію, щоб знайти їх перехресний продукт. Вбудовані, які конкретно розраховують поперечний продукт, заборонені.
Вхідні дані
Два масиви з трьох реальних чисел кожен. Якщо у вашій мові немає масивів, номери все ж повинні бути згруповані в трійки. Обидва вектори матимуть величину . Зауважте, що крос-продукт є некомутативним ( ), тому у вас повинен бути спосіб вказати порядок.
Вихідні дані
Їх перехресний продукт у розумному форматі з кожним компонентом точним до чотирьох значущих цифр або , залежно від того, що є втраченим. Наукові позначення необов’язкові.
Тестові кейси
[3, 1, 4], [1, 5, 9]
[-11, -23, 14]
[5, 0, -3], [-3, -2, -8]
[-6, 49, -10]
[0.95972, 0.25833, 0.22140],[0.93507, -0.80917, -0.99177]
[-0.077054, 1.158846, -1.018133]
[1024.28, -2316.39, 2567.14], [-2290.77, 1941.87, 712.09]
[-6.6345e+06, -6.6101e+06, -3.3173e+06]
Це код-гольф , тому найкоротше рішення в байтах виграє.
Малтісен поставив подібний виклик , але відповідь була поганою, і питання не було відредаговано.