-- 예전 기록/BOJ

[ BOJ ] 4504 : 배수 찾기 ( BRONZE 3 ) / C, Python

rejo 2023. 10. 6. 11:53

문제

정수 n(0 < n < 1000)과 수의 목록이 주어졌을 때, 목록에 들어있는 수가 n의 배수인지 아닌지를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 n이 주어진다. 다음 줄부터 한 줄에 한 개씩 목록에 들어있는 수가 주어진다. 이 수는 0보다 크고, 10,000보다 작다. 목록은 0으로 끝난다.

출력

목록에 있는 수가 n의 배수인지 아닌지를 구한 뒤 예제 출력처럼 출력한다.

풀이 과정

먼저 n 을 입력 받고, 0이 입력될 때 까지 목록을 계속 입력받으면서 n의 배수인지 아닌지를 출력한다. n의 배수인지 아닌지를 확인하기 위해선 n으로 나누었을 때 나누어 떨어진다면 n의 배수임을 확인할 수 있다.

C

#include <stdio.h>

int main(void) {
   int n; scanf("%d", &n);
   int tmp;
   while(1) {
      scanf("%d", &tmp);
      if (tmp == 0) break;

      if (tmp % n == 0) printf("%d is a multiple of %d.\n", tmp, n);
      else printf("%d is NOT a multiple of %d.\n", tmp, n);
   }
   return 0;
}

Python

import sys
input = sys.stdin.readline

n = int(input().rstrip())
while True:
    tmp = int(input().rstrip())
    if tmp == 0: break

    if tmp % n == 0: print('%d is a multiple of %d.'%(tmp, n))
    else: print('%d is NOT a multiple of %d.'%(tmp, n))