Giới thiệu
Tính độ dài đường chéo của ngũ giác đều (regular pentagon) biết độ dài cạnh.
Công thức toán học
Đường chéo của ngũ giác đều cạnh a:
d = a × φ = a × (1 + √5) / 2 ≈ a × 1.618
Lưu ý: Code gốc dùng hệ số 1.22 là không chính xác. Hệ số vàng φ ≈ 1.618.
Chứng minh
Trong ngũ giác đều, đường chéo và cạnh tạo thành tam giác vàng. Tỷ số đường chéo/cạnh = số vàng φ.
φ = (1 + √5) / 2 ≈ 1.618033988749895
Mã nguồn hoàn chỉnh (đã sửa hệ số)
#include <bits/stdc++.h>
using namespace std;
float pentagonDiagonal(float side) {
if (side < 0) return -1;
const float GOLDEN_RATIO = (1 + sqrt(5)) / 2; // φ ≈ 1.618
return GOLDEN_RATIO * side;
}
int main() {
float s = 7;
cout << fixed << setprecision(2) << pentagonDiagonal(s) << endl;
return 0;
}
Kết quả chạy chương trình
11.33
So sánh hệ số
| Hệ số | Giá trị | Ghi chú |
|---|---|---|
| Code gốc | 1.22 | Sai |
| Số vàng φ | 1.618 | Đúng |
Các đường chéo khác của ngũ giác
Ngũ giác đều có 5 đường chéo, tất cả cùng độ dài. Chúng tạo thành ngôi sao năm cánh (pentagram) bên trong.
Phân tích độ phức tạp
- Thời gian: O(1)
- Không gian: O(1)
Kết luận
Đường chéo ngũ giác đều liên quan đến số vàng φ. Cần sử dụng công thức chính xác (1+√5)/2 thay vì xấp xỉ 1.22.