Page 112 고등학교 프로그래밍 교과서
P. 112








컴퓨팅 사고력을 키우는
수행 평가 중첩 제어 구조를 이용하여 완전수 판단 프로그램



활동 목표 중첩 제어 구조를 이용하여 각 수의 약수를 더해 완전수를 판단하는 프로
그램을 작성할 수 있다.



완전수란 자신을 제외한 약수의 합으로 나타낼 수 있는 수이다. 예를 들면, 6의 약수는 1, 2, 3, 6이고 자신
(6)을 제외한 약수의 합(1+2+3)이 자신과 같은 수일 때, 이 수를 완전수라고 한다.


1부터 10000 사이의 완전수를 구하는 프로그램이다.


다음의 실행 결과를 보고, 빈칸에 코드를 채워 프로그램을 완성해 보자.

프로그램

01 #include
02 int main()
03 {
04 int i, j, sum=0, count=0;
05 for (i = 1; i < 10000; i++) {
06 for (j = 1; j < i; j++) {
07 if (i%j == 0) {
08 sum += j;
09 }
10 }
11 if ( ) printf("%d번째 완전수: %d\n", ++count, i);
12 sum = 0;
13 }
14 return 0;
15 }

실행 결과

1번째 완전수: 6
2번째 완전수: 28
3번째 완전수: 496
4번째 완전수: 8128



스스로 평가하기

구분
평가 항목
그렇다 보통이다 그렇지 않다
•선택 구조를 프로그램에 적용할 수 있다.
•반복 구조를 프로그램에 적용할 수 있다.




110 Ⅱ. C 프로그래밍의 기초





(책)2015프로그래밍-교과서3차심의본 본문.indb 110 2017-09-05 오후 4:16:14
   107   108   109   110   111   112   113   114   115   116   117