[실기] 14. 배수와 공배수


배수와 공배수


설명


  • 배수
    • 어떤 수를 1배, 2배, 3배…… 한 수를 그 수의 배수라고 한다.
    • 예) 5를 1배, 2배, 3배…… 한 수 5, 10, 15…를 5의 배수라고 한다.
    • A를 B로 나눌 경우 MOD(A,B) = 0, A가 B의 배수이다.
  • 공배수
    • 임의에 2개의 수의 공통인 배수를 공배수라 한다.
    • 예) 4와 6의 공배수는 12, 24, 36…… 이다.
    • MOD(A,4) + MOD(A,6) = 0


문제


  • 배열 A에 21, 17, 4, 51, 24, 75, 40, 27, 48, 72가 A(1)부터 시작하여 순차적으로 입려되어 있을 때, 3과 4의 공배수인 개수를 구하는 알고리즘을 제시하라.


문제공략


  • 1 . 3과 4의 공통의 배수이다.
  • 2 . MOD(A,3) + MOD(A,4) = 0


C

#include <stdio.h>

int main()
{
    int A[10] = { 21, 17, 4, 51, 24 ,75, 40, 27 ,48 ,72 };
    int CNT = 0;
    int i = 0;
    do {
        int N3 = A[i] % 3;
        int N4 = A[i] % 4;
        int N = N3 + N4;
        if (N == 0) {
            CNT++;
        }
        i++;
    } while (i<10);
    
    printf("%d\n", CNT);
}


JAVA

class Main {
	public static void main (String[] args) {
        int A[] = { 21, 17, 4, 51, 24 ,75, 40, 27 ,48 ,72 };
        int CNT = 0;
        int i = 0;
        
        do {
            int N3 = A[i] % 3;
            int N4 = A[i] % 4;
            int N = N3 + N4;
            if (N == 0) {
                CNT++;
            }
            i++;
        } while (i<10);
        
        System.out.println(CNT);
	}
}