২D কোঅর্ডিনেট স্পেসে তিনটি পয়েন্ট দিয়ে ত্রিভুজের ক্ষেত্রফল বের করতে ম্যাট্রিক্স ডিটারমিন্যান্ট ব্যবহার করা যায়। প্রতিটি পয়েন্টের (x, y) কোঅর্ডিনেট এবং ১ দিয়ে ৩x৩ ম্যাট্রিক্স বানানো হয়। এর ডিটারমিন্যান্টের অর্ধেক হলো ক্ষেত্রফল (অবсолют মান নেওয়া হয়)।
সূত্র
$$Area = \frac{1}{2} \left| \begin{vmatrix} x_1 & y_1 & 1 \\ x_2 & y_2 & 1 \\ x_3 & y_3 & 1 \end{vmatrix} \right|$$
উদাহরণ কোড
#include <iostream>
#include <cmath>
using namespace std;
double det(double M[3][3]) {
double t1 = (M[1][1] * M[2][2]) - (M[1][2] * M[2][1]);
double t2 = (M[1][0] * M[2][2]) - (M[1][2] * M[2][0]);
double t3 = (M[1][0] * M[2][1]) - (M[1][1] * M[2][0]);
return (M[0][0] * t1) + (-M[0][1] * t2) + (M[0][2] * t3);
}
int main() {
double M[3][3];
cout << "Enter Point p1 (x, y): ";
cin >> M[0][0] >> M[0][1];
M[0][2] = 1;
cout << "Enter Point p2 (x, y): ";
cin >> M[1][0] >> M[1][1];
M[1][2] = 1;
cout << "Enter Point p3 (x, y): ";
cin >> M[2][0] >> M[2][1];
M[2][2] = 1;
double determinant = det(M);
cout << "The area is: " << fabs(determinant) * 0.5;
return 0;
}
আউটপুট
Enter Point p1 (x, y): 3 4 Enter Point p2 (x, y): 6 4 Enter Point p3 (x, y): 3 9 The area is: 7.5
ব্যাখ্যা: পয়েন্ট (3,4), (6,4), (3,9) দিয়ে ত্রিভুজের ক্ষেত্রফল ৭.৫ বর্গ একক।