Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

พื้นที่ของรูปหลายเหลี่ยมปกติด้าน n ที่มีรัศมีที่กำหนด?


ในที่นี้เราจะมาดูวิธีหาพื้นที่ของรูปหลายเหลี่ยมปกติด้าน n ซึ่งกำหนดรัศมีไว้ รัศมีคือระยะห่างจากจุดศูนย์กลางของจุดยอดใดๆ เพื่อแก้ปัญหานี้ เราได้วาดเส้นตั้งฉากหนึ่งฉากจากจุดศูนย์กลางไปด้านหนึ่ง ให้แต่ละด้านยาว 'a' ฉากตั้งฉากแบ่งด้านออกเป็นสองส่วน ความยาวของแต่ละส่วนคือ a/2 ตั้งฉากกับรัศมีหนึ่งทำให้มุม x ให้ความยาวของรัศมีเท่ากับ h

พื้นที่ของรูปหลายเหลี่ยมปกติด้าน n ที่มีรัศมีที่กำหนด?

ที่นี่เราจะเห็นว่ารูปหลายเหลี่ยมถูกแบ่งออกเป็นสามเหลี่ยม N เท่ากับ ดังนั้นสำหรับรูปหลายเหลี่ยมที่มีด้าน N จะถูกแบ่งออกเป็นสามเหลี่ยม N ดังนั้นมุมที่จุดศูนย์กลางคือ 360 ซึ่งแบ่งออกเป็นมุมต่างๆ 360°/N (ที่นี่ 360°/6 =60°) ดังนั้นมุม x คือ 180°/N ตอนนี้เราสามารถหา h และ a ได้ง่ายๆ โดยใช้สมการตรีโกณมิติ

พื้นที่ของรูปหลายเหลี่ยมปกติด้าน n ที่มีรัศมีที่กำหนด?

ตอนนี้พื้นที่ของรูปหลายเหลี่ยมทั้งหมดเป็น N*A

ตัวอย่าง

#include <iostream>
#include <cmath>
using namespace std;
float polygonArea(float r, int n){
   return ((r * r * n) * sin((360 / n) * 3.1415 / 180)) / 2; //convert
   angle to rad then calculate
}
int main() {
   float rad = 9.0f;
   int sides = 6;
   cout << "Polygon Area: " << polygonArea(rad, sides);
}

ผลลัพธ์

Polygon Area: 210.44