rueki

SW Expert Academy 1217. 거듭 제곱 (재귀함수) 본문

C, C++ 문제풀이

SW Expert Academy 1217. 거듭 제곱 (재귀함수)

륵기 2020. 4. 6. 10:43
728x90
반응형

문제 링크 : 

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14dUIaAAUCFAYD

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

// Example program
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int square(int a, int b)
{
    if(b==0)
        return 1;
    else
        return a*(square(a,b-1));
    }




int main()
{ 
    
    for(int j =0;j<10;j++){
        int T;
   	    cin>>T;
        int num1, num2;
        cin>>num1>>num2;
        
        
        cout<<'#'<<j+1<<' '<<square(num1, num2)<<'\n';
            
        
        
        
    }
    
    return 0;
}

 

거듭제곱이라 함은 밑을 지수 크기만큼 계속 곱해나가는 것이다

2의 5승은 2 x 2 x 2 x 2 x 2인것 처럼 말이다.

여기서 square라는 제곱할 수 있는 재귀함수를 구현했다.

재귀함수라 함은 함수 안에서 함수 자기자신을 호출하는 방식을 재귀호출(recursive call)이라고 한다.

728x90
반응형
Comments