본문 바로가기

백준 문제풀기/JAVA

[백준 5086 JAVA 자바] 배수와 약수

 

첫 번째 숫자가

두 번째 숫자의 

약수라면 => factor

배수라면 => multiple

둘 다 아니라면 => neither를 출력합시다

 

이거만 읽어도

if, else if, else 를 이용해야 하는걸

알겠죠?

 

코드입니다

 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int a=1;
        int b=1;
        do {
        	a = scan.nextInt();
        	b = scan.nextInt();
        	if (a==0&& b==0) {
        		break;
        	}
        	
        	if(b%a==0) {
        		System.out.println("factor");
        	}
        	else if(a%b==0) {
        		System.out.println("multiple");
        	}
        	else {
        		System.out.println("neither");
        	}
        	
        }while (true);
        
    }
}

 

"마지막 줄에는 0 0을 입력합니다"

는 do-while 문과 if-break를 이용했습니다

 

몇 번 반복해야할지 알면 for 반복을 하지만

몇 번 반복해야 할지 모르면 

저는 주로 do-while, if-break 두개를 이용합니다