C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

LCMを見つけるためのC++プログラム


2つの数値の最小公倍数(LCM)は、両方の倍数である最小公倍数です。

例:15と9の2つの数字があるとします。

15 = 5 * 3
9 = 3 * 3

したがって、15と9のLCMは45です。

2つの数値のLCMを見つけるプログラムは次のとおりです-

#include <iostream>
using namespace std;
int main() {
   int a=7, b=5, lcm;
   if(a>b)
   lcm = a;
   else
   lcm = b;
   while(1) {
      if( lcm%a==0 && lcm%b==0 ) {
         cout<<"The LCM of "<<a<<" and "<<b<<" is "<<lcm;
         break;
      }
      lcm++;
   }
   return 0;
}

出力

The LCM of 7 and 5 is 35

上記のプログラムでは、変数lcmが2つの数値の大きい方として設定されています。これは、次のコードスニペットを使用して示されています。

if(a>b)
lcm = a;
else
lcm = b;

この後、whileループが実行されます。このループでは、LCMがbだけでなくaでも割り切れる場合、それは2つの数値のLCMであり、表示されます。そうでない場合、LCMはこの条件が満たされるまで増分されます。

これを説明するコードスニペットは次のとおりです-

while(1) {
   if( lcm%a==0 && lcm%b==0 ) {
      cout<<"The LCM of "<<a<<" and "<<b<<" is "<<lcm;
      break;
   }
   lcm++;
}

2つの数値のLCMを見つける別の方法は、LCMとGCDの式を使用することです。この式は、2つの数値の積がLCMとGCDの積に等しいことを指定します。

a * b = GCD * LCM

式を使用して2つの数値のLCMを見つけるプログラムは次のとおりです-

#include<iostream>
using namespace std;
int gcd(int a, int b) {
   if (b == 0)
   return a;
   return gcd(b, a % b);
}
int main() {
   int a = 7, b = 5;
   cout<<"LCM of "<< a <<" and "<< b <<" is "<< (a*b)/gcd(a, b);
   return 0;
}

出力

The LCM of 7 and 5 is 35

上記のプログラムでは、LCMは式を使用して求められます。まず、aとbのGCDはgcd()を使用して取得されます。これは再帰関数です。 aとbの2つのパラメータがあります。 bが0より大きい場合、aはmain()関数に返されます。それ以外の場合、gcd()関数は値bとa%bを使用して自分自身を再帰的に呼び出します。

これは、次のコードスニペットを使用して示されています。

int gcd(int a, int b) {
   if (b == 0)
   return a;
   return gcd(b, a % b);
}
を返します

GCDが取得された後、LCMは式を使用して計算されます。次に表示されます。これは、次のコードスニペットに示されています。

cout<<"LCM of "<< a <<" and "<< b <<" is "<< (a*b)/gcd(a, b);

  1. C++で三角形の図心を見つけるプログラム

    この問題では、三角形の3つの頂点の座標を示す2D配列が与えられます。私たちのタスクは、C++で三角形のセントロイドを見つけるプログラムを作成することです。 セントロイド 三角形の3つの中央値は、三角形の3つの中央値が交差する点です。 中央値 三角形の頂点は、三角形の頂点とその反対側の線の中心点を結ぶ線です。 問題を理解するために例を見てみましょう 入力 (-3, 1), (1.5, 0), (-3, -4) 出力 (-3.5, -1) 説明 Centroid (x, y) = ((-3+2.5-3)/3, (1 + 0 - 4)/3) = (-3.5, -1) ソリューションアプロ

  2. C++で平行四辺形の面積を見つけるプログラム

    この問題では、平行四辺形の底と高さを表す2つの値が与えられます。私たちのタスクは、C++で平行四辺形の領域を見つけるプログラムを作成することです。 平行四辺形 は、反対側が等しく平行な4辺の閉じた図形です。 問題を理解するために例を見てみましょう 入力 B = 20, H = 15 出力 300 説明 平行四辺形の面積=B* H =20 * 15 =300 ソリューションアプローチ この問題を解決するために、平行四辺形の面積の幾何学的公式を使用します。 Area = base * height. ソリューションの動作を説明するプログラム 例 #include <io