https://www.acmicpc.net/problem/5086

 

두 수가 주어졌을 때, 다음 3가지 중 어떤 관계인지 구하는 프로그램을 작성하시오.

  1. 첫 번째 숫자가 두 번째 숫자의 약수이다.
  2. 첫 번째 숫자가 두 번째 숫자의 배수이다.
  3. 첫 번째 숫자가 두 번째 숫자의 약수와 배수 모두 아니다.

약수와 배수를 구하는 문제로써

  1. A 가 B의 약수 -> B/A 의 나머지가 0이면 약수
  2. A 가 B의 배수 -> A/B 의 나머지가 0이면 배수
  3. 모두 아니라면  약수와 배수가 모두 아니다

라고 생각했고 이를 코드로 구현하면 다음과 같다.

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        while(true){
            int a = sc.nextInt();
            int b = sc.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문으로 무한 반복으로 입력을 받고, a와 b가 모두 0일때 입력을 멈추기로 했다.

그 외에 조건들은 모두 if문으로 나누어주었다.

'코테 > 백준' 카테고리의 다른 글

9506번 약수들의 합  (1) 2025.02.06
2501번 약수 구하기  (0) 2025.02.06
2869번 달팽이는 올라가고 싶다  (0) 2025.01.27
1193번 분수찾기  (0) 2025.01.24
2563번 색종이  (0) 2025.01.24

+ Recent posts