danielp01   7달 전

안녕하세요.. 혹시 이 코드에서 출력초과가 뜨는 이유를 알 수 있을까요..?

문제에서 의도한 것보다 더 많은 출력이 나올 때 뜨는 것으로 알고있는데 다른 프로그램에서 돌렸을 때는 제가 생각했던 수만큼 나오지만

여기서는 출력 초과라고 떠 문의 드립니다.. 너무 큰 수까지는 제 머릿속으로는 혼자 안되어서 작은 수만 해보았습니다,...

rhdqor213   7달 전

이 문제는 입력이 들어오지 않습니다.

즉, scanf("%d", &n)을 통해서 n에 들어오는 입력이 없고 n = 0인 상태로 d(0)이 실행됩니다.

d(0)이 실행되면 함수의 매커니즘상 32번째 줄에서 또 d(0)을 실행하게 됩니다.

그렇게 d(0)이 계속 실행되면서 printf를 계속하게 되고 출력한 내용이 정답의 2배를 넘어 출력초과를 받게되는 것입니다.

nasoob114   7달 전

생성자가 없는 숫자를 셀프 넘버라고 한다. 100보다 작은 셀프 넘버는 총 13개가 있다. 1, 3, 5, 7, 9, 20, 31, 42, 53, 64, 75, 86, 97

10000보다 작거나 같은 셀프 넘버를 한 줄에 하나씩 출력하는 프로그램을 작성하시오.

위 코드는 셀프 넘버가 아니라 d(n)의 결과값을 출력하는 코드입니다.

danielp01   7달 전

이런 두분 다 감사합니다 입력을 받지 않는 다는 것을 미처 보지못하였습니다.. 감사합니다

댓글을 작성하려면 로그인해야 합니다.