ホームページ  >  記事  >  バックエンド開発  >  ユークリッドアルゴリズムを実装するCプログラム

ユークリッドアルゴリズムを実装するCプログラム

WBOY
WBOY転載
2023-09-17 12:41:02999ブラウズ

ユークリッドアルゴリズムを実装するCプログラム

#問題

ユークリッド アルゴリズムを実装して、2 つの整数の最大公約数 (GCD) と最小公倍数 (LCM) を見つけ、結果を変換して出力します。指定された整数を使用します。

解決策

2 つの整数の最大公約数 (GCD) と最小公倍数 (LCM) を求めるユークリッド アルゴリズムを実装する解決策は次のとおりです。

Find GCD LCM のロジックは次のとおりです -
if(firstno*secondno!=0){
   gcd=gcd_rec(firstno,secondno);
   printf("</p><p>The GCD of %d and %d is %d</p><p>",firstno,secondno,gcd);
   printf("</p><p>The LCM of %d and %d is %d</p><p>",firstno,secondno,(firstno*secondno)/gcd);
}

呼び出される関数は次のとおりです-

int gcd_rec(int x, int y){
   if (y == 0)
      return x;
   return gcd_rec(y, x % y);
}

プログラム

次は、ユークリッド アルゴリズムを実装するための C プログラムです。 2 つの整数の最大公約数 (GCD) と最小公倍数 (LCM) を求める - ライブ デモンストレーション

#include<stdio.h>
int gcd_rec(int,int);
void main(){
   int firstno,secondno,gcd;
   printf("Enter the two no.s to find GCD and LCM:");
   scanf("%d%d",&firstno,&secondno);
   if(firstno*secondno!=0){
      gcd=gcd_rec(firstno,secondno);
      printf("</p><p>The GCD of %d and %d is %d</p><p>",firstno,secondno,gcd);
      printf("</p><p>The LCM of %d and %d is %d</p><p>",firstno,secondno,(firstno*secondno)/gcd);
   }
   else
      printf("One of the entered no. is zero:Quitting</p><p>");
   }
   /*Function for Euclid&#39;s Procedure*/
   int gcd_rec(int x, int y){
   if (y == 0)
      return x;
   return gcd_rec(y, x % y);
}

出力

上記のプログラムを実行すると、実行すると、次の結果が生成されます -

Enter the two no.s to find GCD and LCM:4 8

The GCD of 4 and 8 is 4

The LCM of 4 and 8 is 8

以上がユークリッドアルゴリズムを実装するCプログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。