약수를 구하는 방법은
소수인지 판정하는거를
조금만 바꾸면 됩니다
코드입니다
import java.util.*;
public class Main{
public static void main(String []args){
Scanner in = new Scanner(System.in);
while(true)
{
int x = in.nextInt();
if(x == -1) break;
int sum = 0;
List<Integer> arr = new ArrayList<>();
for(int i=1; i<=x; i++)
{
if(x%i==0)
{
arr.add(i);
sum+=i;
}
}
if((sum-x)==x)
{
System.out.print(x+" = ");
for(int j=0; j<arr.size()-1; j++)
{
if((arr.size()-2)!=j)
{
System.out.print(arr.get(j)+" + ");
}else{
System.out.print(arr.get(j));
}
}
System.out.println();
}else{
System.out.println(x+" is NOT perfect.");
}
}
}
}
어레이 리스트를 이용해
출력이 원하는 형식을 맞춰줬습니다
'백준 문제풀기 > JAVA' 카테고리의 다른 글
[백준 10101 JAVA 자바] 삼각형 외우기 (0) | 2023.08.13 |
---|---|
[백준 9655 JAVA 자바] 돌 게임 (0) | 2023.08.11 |
[백준 9498 JAVA 자바] 시험 성적 (0) | 2023.08.11 |
[백준 9086 JAVA 자바] 문자열 (0) | 2023.08.11 |
[백준 9063 JAVA 자바] 대지 (0) | 2023.08.11 |