변이 'a'인 정사각형이 하나 있다고 가정합니다. 사각형의 중간점을 반복해서 붙여서 더 많은 사각형을 만들어 보겠습니다. 반복 횟수는 n회입니다. n번째 제곱의 넓이를 구해야 합니다.
바깥쪽 정사각형의 한 변이 'a'이므로 면적은
이제 피타고라스 정리를 사용하여 두 번째 직사각형의 면적을 얻을 수 있습니다. -
마찬가지로 3 의 영역 정사각형은 -
이를 사용하여 n번째 제곱의 면적이 -
임을 이해할 수 있습니다.
예시
#include <iostream> #include <cmath> using namespace std; float area(float a, float n) { if (a < 0 ) //if the value is negative it is invalid return -1; float area = (a*a) / pow(2, n-1); return area; } int main() { float a = 20.0, n = 10.0; cout << "Area : " << area(a, n); }
출력
Area : 0.78125