วงกลมภายในรูปหลายเหลี่ยมปกติ N ด้าน (Incircle) มีรัศมี r = a / (2 tan(180°/n)) โดย a = ความยาวด้าน
พื้นที่วงกลม = πr² = π × [a / (2 tan(180°/n))]²
โค้ดตัวอย่าง
#include <iostream>
#include <cmath>
using namespace std;
int main() {
float n = 6; // หกเหลี่ยม
float a = 4; // ความยาวด้าน
float r = a / (2 * tan((180 / n) * M_PI / 180));
float area = M_PI * r * r;
cout << "area = " << area << endl;
return 0;
}
ผลลัพธ์
area = 37.6801