728x90
자기 자신을 제외한 모든 양의 약수들의 합이 자기 자신이 되는 자연수를 완전수라고 한다.
예를 들면, 6과 28은 완전수이다. 6=1+2+3
1,2,3은 각각 6의 약수
28=1+2+4+7+14 // 1,2,4,7,14는 각각 28의 약수
입력으로 자연수 N을 받고, 출력으로 N 이하의 모든 완전수를 출력하는 코드를 작성하라.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import java.util.Scanner;
public class Exam0404_1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("자연수 입력 : ");
int n = sc.nextInt();
for(int i=1;i<=n;i++) {
int sum=0;
for(int j=1;j<i;j++) { // 자신을 제외한 약수의 합 구하기
if(i%j==0) sum += j;
}
if(i==sum) System.out.printf("%3d", i); // 약수합과 자신이 같으면 완전수
}
System.out.println();
sc.close();
}
}
|
cs |

728x90
'프로그래머스 코딩(자바) > Coding dojang' 카테고리의 다른 글
palindrome (0) | 2023.04.06 |
---|---|
2진법으로 자연수 나타내기 (0) | 2023.04.06 |
10~1000까지 각 숫자 분해하여 곱하기의 전체 합 구하기 (0) | 2023.04.05 |
Special Pythagorean triplet (0) | 2023.04.05 |
시저 암호 풀기 (0) | 2023.04.05 |