C言語 最大公約数(GCD)の求め方|ユークリッド互除法を解説

C言語では、最大公約数を求めるために再帰的な方法やループを使うことができます。以下は、ループを使用したサンプルコードです。

#include <stdio.h>

int gcd(int a, int b) {
    int temp;
    while (b != 0) {
        temp = a % b;
        a = b;
        b = temp;
    }
    return a;
}

int main() {
    int num1, num2;
    
    printf("请输入两个整数:");
    scanf("%d %d", &num1, &num2);
    
    int result = gcd(num1, num2);
    printf("最大公约数为:%d\n", result);
    
    return 0;
}

上記のコードでは、gcdという関数を定義して最大公約数を求める。この計算でユークリッドの互除法が使用される。そして、main関数でユーザーから2つの整数を入力し、gcd関数を呼び出して最大公約数を計算し、結果を出力する。

bannerAds