Példák két egész szám GCD kiszámításának különféle módjaira (mind pozitív, mind negatív egész számokra) hurkok és döntéshozatali utasítások segítségével.
A példa megértéséhez ismernie kell a következő C ++ programozási témákat:
- C ++ ha, ha… más, és beágyazott, ha … más
- C ++ a hurokhoz
- C ++ közben és csináld … míg a hurok
A legnagyobb egész szám, amely tökéletesen el tudja osztani a két egész számot, GCD vagy HCF néven ismert.
1. példa: Keresse meg a GCD-t a while ciklus használatával
#include using namespace std; int main() ( int n1, n2; cout <> n1>> n2; while(n1 != n2) ( if(n1> n2) n1 -= n2; else n2 -= n1; ) cout << "HCF = " << n1; return 0; )
Kimenet
Írjon be két számot: 78 52 HCF = 26
A fenti programban a kisebb számot kivonjuk a nagyobb számból, és ezt a számot a nagyobb szám helyett tároljuk.
Ezt a folyamatot addig folytatjuk, amíg két szám egyenlővé nem válik, ami HCF lesz.
Példa: 2. Keresse meg a HCF / GCD-t a loop használatával
#include using namespace std; int main() ( int n1, n2, hcf; cout <> n1>> n2; // Swapping variables n1 and n2 if n2 is greater than n1. if ( n2> n1) ( int temp = n2; n2 = n1; n1 = temp; ) for (int i = 1; i <= n2; ++i) ( if (n1 % i == 0 && n2 % i ==0) ( hcf = i; ) ) cout << "HCF = " << hcf; return 0; )
A program logikája egyszerű.
Ebben a programban n1 és n2 közötti kis egész szám tárolódik az n2-ben. Majd a hurkot iterált re i = 1
a i <= n2
és minden iterációban i értéke 1-el nő.
Ha mindkét szám osztható i-vel, akkor ezt a számot a hcf változó tárolja.
Az iteráció befejeztével a HCF a hcf változóban lesz tárolva.