소프트웨어/C++
[2004년 기말 10번] 3의 배수 출력 - 재귀호출
카켈
2007. 3. 4. 21:41
목적
- 재귀 호출을 이해한다.
문제
코드
#include <iostream>
using namespace std;
void print_3(int aIn)
{
if(aIn < 1)
return;
else
{
if(aIn % 3 == 0)
{
cout << aIn << " ";
print_3(--aIn);
}
else
{
print_3(--aIn);
}
}
return;
}
int main(void)
{
print_3(50);
cout << endl;
return 0;
}
해설
- aIn < 1 조건을 한 이유는 --aIn 이후 1에서 --aIn 을 하면 0 이 출력되기 때문입니다.
- 재귀 호출은 효율적이면서도 위험한 결과를 얻을수 있는 코딩입니다. 예전 문제들을 잘 보시기 바랍니다.
- 배수 구하는건 나머지가 0인 원리를 이용해서 구하면 쉽게 얻을수 있습니다.
참고
- 유사 문제