소개
이 랩에서는 C 프로그래밍에서 재귀 (recursion) 를 사용하여 주어진 숫자를 n 제곱하는 방법을 배웁니다.
이 랩에서는 C 프로그래밍에서 재귀 (recursion) 를 사용하여 주어진 숫자를 n 제곱하는 방법을 배웁니다.
~/project/ 디렉토리에 main.c라는 새 파일을 생성합니다. 여기에 C 코드를 작성할 것입니다.
power() 함수는 두 개의 정수를 입력으로 받아 거듭제곱 연산을 수행한 후 값을 반환합니다.
int power(int base, int exponent);
power() 함수는 재귀적으로 자신을 호출하여 거듭제곱 연산을 수행합니다. 지수가 0 이면 1 을 반환합니다. 그렇지 않으면, 밑수에 power() 함수를 밑수와 지수보다 1 작은 값으로 호출한 결과를 곱한 값을 반환합니다.
int power(int base, int exponent)
{
if(exponent == 0) // Base case
return 1;
else
return base * power(base, exponent - 1); // Recursive case
}
scanf() 함수를 사용하여 사용자로부터 밑수와 지수를 입력받은 다음, 이를 power() 함수에 인수로 전달합니다. 마지막으로, printf() 함수를 사용하여 결과를 표시합니다.
int main()
{
int base, exponent, result;
printf("Enter the base: ");
scanf("%d", &base);
printf("Enter the exponent: ");
scanf("%d", &exponent);
result = power(base, exponent);
printf("%d^%d = %d", base, exponent, result);
return 0;
}
변경 사항을 저장하고 다음과 같이 gcc 컴파일러를 사용하여 프로그램을 컴파일합니다.
gcc main.c -o main
이제 터미널에서 다음 명령을 입력하여 프로그램을 실행합니다.
./main
출력은 사용자가 입력한 지수만큼 밑수를 거듭제곱한 결과를 표시합니다.
이 랩에서는 C 프로그래밍에서 재귀 (recursion) 를 사용하여 n 제곱을 계산하는 방법을 배웠습니다. 지수가 0 이 되는 기본 사례 (base case) 에 도달할 때까지 자체를 호출하는 재귀 함수를 사용하여 이를 수행했으며, 이때 값 1 을 반환합니다. 재귀 함수에서 얻은 값을 변수에 저장하고 printf() 함수를 사용하여 사용자에게 표시했습니다.
power() 함수는 C 프로그래밍에서 임의의 숫자를 주어진 거듭제곱으로 올리는 데 사용할 수 있습니다.