จากด้านของสี่เหลี่ยมจัตุรัสและจำนวนการพับ เราต้องหาพื้นที่ของสี่เหลี่ยมจัตุรัสตามจำนวนครั้งที่พับ
สี่เหลี่ยมจัตุรัสเป็นรูป 2 มิติคล้ายสี่เหลี่ยมผืนผ้าโดยที่ด้านทุกด้านเท่ากัน และทุกมุมมีค่าเท่ากับ 90 องศา
ในขณะที่พับสี่เหลี่ยมเรา −
-
พับสี่เหลี่ยมจากด้านซ้ายบนของสามเหลี่ยมไปที่ด้านล่างของด้านขวาเป็นรูปสามเหลี่ยม
-
พับที่สองจะพับจากบนลงล่าง
-
พับที่สามจากซ้ายไปขวาอีกครั้ง
และเราทำตามขั้นตอนข้างต้นเช่นเดียวกัน
ตัวอย่าง
Input: side = 23, fold = 4 Output: area of square after n folds is : 6.53086
เพื่อแก้ปัญหานี้ เราสามารถปฏิบัติตามแนวทางด้านล่าง −
- ประการแรก เราต้องหาพื้นที่ของสี่เหลี่ยมจัตุรัสก่อนที่จะพับสี่เหลี่ยมจัตุรัส
- ทุกพับเราต้องครึ่งหนึ่งของพื้นที่สี่เหลี่ยมจัตุรัส Area =Area/2.
- สุดท้าย เราจะแบ่งพื้นที่ของสี่เหลี่ยมจัตุรัสด้วย pow(2, fold)
อัลกอริทึม
START In function double area_nfold(double side, double fold) Step 1-> Decalre and initialize area = side * side Step 2-> Return (area * 1.0 / pow(3, fold)) In int main() Step 1 -> Decalre and initialize double side = 23, fold = 4 Step 2 -> Call function area_nfold(side, fold) and print the results STOP
ตัวอย่าง
#include <bits/stdc++.h> using namespace std; //function to calculate area of square after n folds double area_nfold(double side, double fold){ double area = side * side; return area * 1.0 / pow(3, fold); } int main(){ double side = 23, fold = 4; cout <<"area of square after n folds is :"<<area_nfold(side, fold); return 0; }
ผลลัพธ์
area of square after n folds is :6.53086