ในโจทย์การหาพื้นที่ของรูปหลายเหลี่ยมธรรมดาที่มีด้าน n ด้านหนึ่ง เราจะได้สูตรพื้นที่ของรูปมาสร้างโปรแกรมตามนั้น แต่ก่อนอื่นเรามาทบทวนพื้นฐานเพื่อให้เข้าใจหัวข้ออย่างง่ายๆ ก่อน
รูปหลายเหลี่ยมปกติด้าน N เป็นรูปหลายเหลี่ยมของด้าน n ซึ่งทุกด้านเท่ากัน เช่น รูปห้าเหลี่ยมธรรมดา รูปหกเหลี่ยมปกติ เป็นต้น
พื้นที่ คือการแสดงเชิงปริมาณของขอบเขตของตัวเลขสองมิติใดๆ
ในการหาพื้นที่ของรูปนี้ เราต้องหาพื้นที่ของสามเหลี่ยมแต่ละรูปในรูปนี้ แล้วคูณมันด้วยจำนวนด้านที่มี เนื่องจากเราได้รับ n ด้าน
จากรูปด้านบนนี้ เราสามารถสร้างสูตรสำหรับพื้นที่ได้
แต่ละด้านของรูปหลายเหลี่ยมปกติสามารถสร้างสามเหลี่ยมด้าน a (ด้านของรูปหลายเหลี่ยม) และมุม 180 / n (n คือจำนวนด้านของรูปหลายเหลี่ยม) หาพื้นที่ได้จากสูตร
พื้นที่สามเหลี่ยม =½ * b * h
ทีนี้ h =a * tan(180/n)
So , area = ½ * a * a / 2 * tan(180/n) = a * a / (4 * tan(180/n))
การใช้สูตรนี้สำหรับสามเหลี่ยมแต่ละรูปของรูปหลายเหลี่ยม เราสามารถสร้างพื้นที่ของรูปหลายเหลี่ยมทั้งหมดได้
พื้นที่ของรูปหลายเหลี่ยมปกติด้าน n =n * (a * a / (4 * tan(180 /n)))
อัลกอริทึม
Step 1 : calculate the value of angle using (180 / n) Step 2 : Calculate the area of regular polygon using n * (a * a / (4 * tan(180 /n))) . Step 3 : Print the area of polygon.
ตัวอย่าง
#include<iostream> #include<math.h> using namespace std; int main(){ float a = 12, n = 9; float area=(a * a * n) / (4 * tan((180 / n) * 3.14159 / 180)); cout<<"The area of "<<n<<" sided regular polygon of side "<<a<<" is "<<area; return 0; }
ผลลัพธ์
The area of 9 sided regular polygon of side 12 is 890.183