Dviejų sveikų skaičių (tiek teigiamų, tiek neigiamų sveikųjų skaičių) GCD apskaičiavimo būdų, naudojant kilpas ir sprendimų priėmimo teiginius, pavyzdžiai.
Norėdami suprasti šį pavyzdį, turėtumėte žinoti šias C ++ programavimo temas:
- C ++, jei, jei… dar kitaip, ir įdėta, jei … kita
- „C ++“ - „Loop“
- C ++, o ir darykite … kol kilpa
Didžiausias sveikasis skaičius, galintis puikiai padalyti du skaičius, žinomas kaip šių dviejų skaičių GCD arba HCF.
1 pavyzdys: raskite GCD naudodami while loop
#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; )
Rezultatas
Įveskite du skaičius: 78 52 HCF = 26
Ankstesnėje programoje mažesnis skaičius atimamas iš didesnio skaičiaus ir tas skaičius saugomas vietoje didesnio skaičiaus.
Šis procesas tęsiamas tol, kol du skaičiai taps lygūs, o tai bus HCF.
Pavyzdys: 2. Raskite HCF / GCD naudodami ciklą
#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; )
Šios programos logika yra paprasta.
Šioje programoje mažas sveikas skaičius tarp n1 ir n2 yra saugomas n2. Tada kilpa kartojama nuo i = 1
iki i <= n2
ir kiekvienoje iteracijoje i reikšmė padidinama 1.
Jei abu skaičiai dalijasi iš i, tada šis skaičius saugomas kintamajame hcf.
Baigus iteraciją, HCF bus saugomas kintamajame hcf.