ソフトウェア開発 C言語

ユークリッドの互除法を用いて3つの数の最大公約数を求める

戻る


ユークリッドの互除法を用いて3つの数の最大公約数を求めるコードは以下の通り。

/* ユークリッドの互除法を用いて3つの数の最大公約数を求める */
#include <stdio.h>

int gcd(int x, int y)
{
    while(1)
    {
        x = x % y;
        if (x == 0)
            return y;
        y = y % x;
        if (y == 0)
            return x;
    }
}

int main(void)
{
    int a, b, c;

    printf("a,b,cの3つの数の最大公約数を求めます。\n");
    printf("a: ");
    scanf("%d", &a);
    printf("b: ");
    scanf("%d", &b);
    printf("c: ");
    scanf("%d", &c);

    printf("aとbとcの最大公約数は %d\n", gcd(gcd(a, b), c));

    return 0;
}

ソース: euclid3.zip


戻る

©片山博文MZ
katayama.hirofumi.mz@gmail.com

inserted by FC2 system