मान लीजिए हमारे पास एक त्रिभुज की दो आसन्न भुजाओं के लिए दो वेक्टर हैं, जो $x\hat{i}+y\hat{j}+z\hat{k}$ के रूप में हैं। हमारा कार्य त्रिभुज का क्षेत्रफल ज्ञात करना है। त्रिभुज का क्षेत्रफल दो वेक्टर के क्रॉस प्रोडक्ट का परिमाण होता है। (|A x B|)
$$\frac{1}{2}\rvert \vec{A}\times\vec{B}\rvert=\frac{1}{2}\sqrt{(y_{1}*z_{2}-y_{2}*z_{1})^{2}+(x_{1}*z_{2}-x_{2}*z_{1})^{2}+(x_{1}*y_{2}-x_{2}*y_{1})^{2}}$$
उदाहरण
#include <iostream>
#include <cmath>
using namespace std;
float area(float A[], float B[]) {
float area = sqrt(pow((A[1] * B[2] - B[1] * A[2]),2) + pow((A[0] * B[2] - B[0] * A[2]),2) + pow((A[0] * B[1] - B[0] * A[1]),2));
return area*0.5;
}
int main() {
float A[] = {3, 1, -2};
float B[] = {1, -3, 4};
float a = area(A, B);
cout << "Area = " << a;
}
आउटपुट
Area = 8.66025