반응형
C언어 공약수 (common divisor)
최대공약수 (유클리드 호제법) - 48, 72
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | /* Greatest common divisor and greatest common multiple. */ #include <stdio.h> int main() { // Greatest common divisor of two integers x, y by Euclidean method int x = 48, y = 72; if (x < y) { int temp = x; x = y; y = temp; } while (1) { int m = x % y; if (m == 0) break; x = y; y = m; } printf("%d\n", y); return 0; } | cs |
입력한 두 숫자의 최대공약수 (유클리드 호제법) -
Greatest common divisor of two input integers by Euclidean method
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | /* Greatest common divisor and greatest common multiple. */ #include <stdio.h> // Get input number int getInputNumber() { int input = 0; printf("Input an integer: "); scanf("%d", &input); return input; } // Switch numbers if (x < y) void switchNum(int x, int y) { if (x < y) { int temp = x; x = y; y = temp; } } // Get common divisor of x and y int getCommonDivisor(int x, int y) { while (1) { int m = x % y; if (m == 0) break; x = y; y = m; } return y; } // Print result void print(int input1, int input2, int cd) { printf("Greatest common divisor of two integers "); printf("%d, %d by Euclidean method: %d\n", input1, input2, cd); } // Run methods void execute() { // Get input numbers int input1 = getInputNumber(); int input2 = getInputNumber(); // Swich number switchNum(input1, input2); // Get common divisor of two input numbers int cd = getCommonDivisor(input1, input2); // Print result print(input1, input2, cd); } int main() { execute(); return 0; } | cs |
반응형
'C 언어 > C언어 기초' 카테고리의 다른 글
[C언어 #24] 배열 입력 / 초기화 (0) | 2020.06.26 |
---|---|
[C언어 #23] 카운트다운 출력 (0) | 2020.06.26 |
[C언어 #21] 완전수 찾기 (0) | 2020.06.22 |
[C언어 #20] 배열안에 3의 배수이면서 4의 배수인 수의 개수 (0) | 2020.06.21 |
[C언어 #19] 소인수 분해 (0) | 2020.06.21 |