Primjeri različitih načina izračuna GCD-a dviju cijelih brojeva (i za pozitivne i za negativne cijele brojeve) pomoću petlji i izjava za donošenje odluka.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja na C ++:
- C ++ ako, ako … drugo i ugniježđeno ako … drugo
- C ++ za petlju
- C ++ while and do … while Loop
Najveći cijeli broj koji može savršeno podijeliti dva cijela broja poznat je kao GCD ili HCF od ta dva broja.
Primjer 1: Pronađite GCD pomoću while petlje
#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; )
Izlaz
Unesite dva broja: 78 52 HCF = 26
U gornjem programu manji broj se oduzima od većeg broja i taj broj se pohranjuje umjesto većeg broja.
Ovaj se postupak nastavlja sve dok dva broja ne postanu jednaka, što će biti HCF.
Primjer: 2. Pronađite HCF / GCD pomoću for petlje
#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; )
Logika ovog programa je jednostavna.
U ovom programu, mali cijeli broj između n1 i n2 pohranjen je u n2. Zatim se petlja ponavlja od i = 1
do i <= n2
i u svakoj se iteraciji vrijednost i povećava za 1.
Ako su tada oba broja djeljiva s i, taj se broj pohranjuje u varijablu hcf.
Kada je iteracija završena, HCF će se pohraniti u varijablu hcf.