Dviejų sveikųjų skaičių LCM (mažiausias bendrasis kartotinis) 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 ++, o ir darykite … kol kilpa
Dviejų sveikų skaičių a ir b LCM yra mažiausias teigiamas sveikasis skaičius, kuris dalijasi tiek iš a, tiek iš b.
1 pavyzdys: raskite LCM
#include using namespace std; int main() ( int n1, n2, max; cout <> n1>> n2; // maximum value between n1 and n2 is stored in max max = (n1> n2) ? n1 : n2; do ( if (max % n1 == 0 && max % n2 == 0) ( cout << "LCM = " << max; break; ) else ++max; ) while (true); return 0; )
Rezultatas
Įveskite du skaičius: 12 18 LCM = 36
Aukščiau pateiktoje programoje vartotojo prašoma įrašyti sveikus skaičius iš dviejų sveikų skaičių n1 ir n2, o didžiausias iš šių dviejų skaičių saugomas maks.
Tikrinama, ar max dalijasi iš n1 ir n2, jei jis dalijasi iš abiejų skaičių, atspausdinamas max (kuriame yra LCM) ir nutraukiama kilpa.
Jei ne, max vertė padidinama 1 ir tas pats procesas vyksta tol, kol max dalijasi tiek iš n1, tiek iš n2.
2 pavyzdys: raskite LCM naudodami HCF
Dviejų skaičių LCM pateikia:
LCM = (n1 * n2) / HCF
Apsilankykite šiame puslapyje ir sužinokite: Kaip apskaičiuoti HCF C ++ formatu?
#include using namespace std; int main() ( int n1, n2, hcf, temp, lcm; cout <> n1>> n2; hcf = n1; temp = n2; while(hcf != temp) ( if(hcf> temp) hcf -= temp; else temp -= hcf; ) lcm = (n1 * n2) / hcf; cout << "LCM = " << lcm; return 0; )