Bài tập  /  Bài đang cần trả lời

Giải bài có thưởng!

Cho a(x1, y1), B(x2, y2), C(x3, y3). Hãy kiểm tra xem A, B, C có là ba đỉnh của tam giác không nếu có hãy tính và đưa ra diện tích, ngược lại thì ghi ra "NONE" bằng C++


Cho a(x1,y1),B(x2,y2),C(x3,y3). Hãy kiểm tra xem A,B,C có là ba đỉnh của tam giác không nếu có hãy tính và đưa ra diện tích, ngược lại thì ghi ra "NONE" bằng C++
 
0 Xem trả lời
Hỏi chi tiết
122
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Để kiểm tra xem ba điểm \( A(x1, y1) \), \( B(x2, y2) \), và \( C(x3, y3) \) có tạo thành một tam giác hay không, ta cần kiểm tra xem chúng có thẳng hàng hay không. Nếu ba điểm thẳng hàng, chúng không thể tạo thành một tam giác.

Công thức để kiểm tra ba điểm có thẳng hàng hay không là kiểm tra diện tích tam giác tạo bởi ba điểm đó. Nếu diện tích bằng 0, ba điểm thẳng hàng. Diện tích tam giác có thể tính bằng công thức:

\[ \text{Diện tích} = \frac{1}{2} \left| x1(y2 - y3) + x2(y3 - y1) + x3(y1 - y2) \right| \]

Nếu diện tích bằng 0, ba điểm thẳng hàng và không tạo thành tam giác. Nếu diện tích khác 0, ba điểm tạo thành tam giác và ta có thể tính diện tích theo công thức trên.

Dưới đây là chương trình C++ để kiểm tra và tính diện tích tam giác:

```cpp
#include
#include

using namespace std;

int main() {
double x1, y1, x2, y2, x3, y3;

// Nhập tọa độ của ba điểm
cout << "Nhap toa do diem A (x1, y1): ";
cin >> x1 >> y1;
cout << "Nhap toa do diem B (x2, y2): ";
cin >> x2 >> y2;
cout << "Nhap toa do diem C (x3, y3): ";
cin >> x3 >> y3;

// Tính diện tích tam giác
double area = 0.5 * abs(x1*(y2 - y3) + x2*(y3 - y1) + x3*(y1 - y2));

// Kiểm tra và in kết quả
if (area == 0) {
cout << "NONE" << endl;
} else {
cout << "Dien tich tam giac la: " << area << endl;
}

return 0;
}
```

Chương trình này sẽ yêu cầu người dùng nhập tọa độ của ba điểm và sau đó tính diện tích tam giác. Nếu diện tích bằng 0, chương trình sẽ in ra "NONE". Nếu diện tích khác 0, chương trình sẽ in ra diện tích của tam giác.

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×