본문 바로가기
알고리즘/백준 문제 풀이

[BOJ/백준] 5086번 배수와 약수 - [c/c++] 풀이

by 미니상미니 2023. 6. 9.
반응형

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

 

5086번: 배수와 약수

각 테스트 케이스마다 첫 번째 숫자가 두 번째 숫자의 약수라면 factor를, 배수라면 multiple을, 둘 다 아니라면 neither를 출력한다.

www.acmicpc.net

 

 

 

 


  • 문제


해설

A가 B의 약수인 지 확인하는 방법은 B를 A로 나누었을 때 나머지가 0인지 확인하면 된다. 약수일 경우 나누어 떨어지기 때문이다.

비슷하게 A가 B의 배수인지 확인하는 방법도 A를 B로 나누었을 때 나머지가 0인 지 확인하면 된다.

 

코드

c

#include <stdio.h>

int main() {

  int a, b;
  scanf("%d %d", &a, &b);

  while(a != 0 && b != 0) {
    if(b % a == 0) 
      printf("factor \n");
    else if(a % b == 0)
      printf("multiple \n");
    else
      printf("neither \n");

    scanf("%d %d", &a, &b);
  }

  return 0;
}

 

c++

#include <iostream>

using namespace std;

int main() {

  int a, b;
  cin >> a >> b;

  while(a != 0 && b != 0) {
    if(b % a == 0) 
      cout << "factor" << '\n';
    else if(a % b == 0)
      cout << "multiple" << '\n';
    else
      cout << "neither" << '\n';

    cin >> a >> b;
  }

  return 0;
}

 

 

 

 

반응형

댓글