어떤 정수의 모든 약수 중 자신을 제외한 약수를 모두 합하면 자신과 같아지는 수가 있다. 예를 들어 6의 약수 1, 2, 3, 6 중 6을 제외한 1, 2, 3을 더하면 6이 되어 자신과 같아진다.
다음 그림은 4부터 1,000까지의 정수 중 이러한 약수를 갖는 수를 찾아 출력하고 또한 그 개수를 구하여 출력하는 알고리즘이다. <그림>의 괄호 안 내용에 가장 적합한 항목을 <답항 보기>에서 선택하여 해당 번호 (1)~(5)에 마크하시오.
사용하는 변수는 다음과 같다.
- LM: 자신을 제외한 약수의 합이 자신과 같은 수의 개수를 구하는 변수
- N, J, R: 계산 처리를 위한 변수
- K: 어떤 수의 모든 약수에서 자신을 제외한 약수 중 최대값
- SUM: 약수들의 합을 구하는 변수
약수의 의미 설명
어떤 수의 모든 약수 중 자신을 제외하면 그 절반 값이 최대의 약수가 된다. (짝수의 경우) 예를 들어 20의 모든 약수는 1, 2, 4, 5, 10, 20인데 자신(20)을 제외하면 20의 절반 값인 10이 최대의 약수가 된다.
함수 설명
- INT(X): X보다 크지 않은 정수를 구하는 함수이다.
- MOD(A, B): 정수 A를 정수 B로 나눠 나머지를 구하는 함수이다.
'정보처리기사 > 알고리즘' 카테고리의 다른 글
[07년2회] 삽입 정렬 (0) | 2017.08.02 |
---|---|
[09년] 구구단 (0) | 2017.08.02 |
[06년4회] 화폐의 매수 구하기 (0) | 2017.08.02 |
[08년6월](77*1)+(76*2)+(75*3)+(74*5)+…+(2*76)+(1*77) (0) | 2017.08.02 |
[09년1월] A와 B사이 자연수 합계 (0) | 2017.08.02 |