Program C++ pentru a găsi GCD

Program C Pentru A Gasi Gcd



GCD este denumit „ Cel mai mare divizor comun ” (GCD). Apare în mod regulat într-o varietate de calcule și tehnici. Este un concept de bază în matematică care este folosit pentru a calcula cel mai mare număr pozitiv care este rezultatul împărțirii între două sau mai multe numere care au rămas zero.

În acest ghid, vom analiza diferite modele pentru a găsi GCD-ul cu metode în C++.

Program C++ pentru a găsi GCD

În C++, pentru a obține cel mai mare număr întreg pozitiv care împarte două numere furnizate fără a lăsa niciun rest, utilizați GCD (Greaest Common Divisor). Acesta ajută la simplificarea fracțiilor și la rezolvarea problemelor care implică factori comuni. Funcția GCD dintr-un program returnează cel mai mare factor comun între două numere întregi de intrare.







C++ oferă mai multe metode pentru calcularea GCD a două numere. Unele dintre ele sunt descrise mai jos.



Metoda 1: Găsiți GCD folosind algoritmul euclidian în C++

Algoritmul euclidian ” este o metodă larg utilizată și fiabilă pentru determinarea GCD a două numere diferite. Se bazează pe faptul că GCD pentru două numere întregi rămâne neschimbată dacă un număr mai mic (întregi) este dedus din cel mai mare, iar această abordare continuă până când oricare dintre numerele întregi devine zero.



Să aruncăm o privire la exemplul de mai jos, aici găsim (GCD) a două numere folosind algoritmul euclidian. Mai întâi, includeți bibliotecile necesare:





#include
folosind spatiu de nume std ;

Aici:

  • ” fișierul antet include fluxurile de intrare și ieșire, ceea ce permite operațiunile de intrare și ieșire.
  • folosind namespace std ” este o directivă care facilitează utilizarea numelor care provin din spațiul de nume std.

Apoi, declarați „ find_GCD() ”funcție care ia doi parametri întregi” valoare1 ' și ' valoarea2 ” respectiv. Apoi, utilizați „ dacă ” declarație pentru a verifica „ valoare1 „care va fi întotdeauna mai mare și egal cu „ valoarea2 ”. După aceasta, un „ in timp ce „Se folosește bucla care continuă să returneze valoare până la condiția „ valoare2 != 0 ” devine fals. În interiorul buclei „while”, „value1” este împărțit la „value2” și salvează rezultatul în „ rest ' variabil.



Valorile „valoare1” și „valoare2” sunt actualizate pe măsură ce „valoare1” devine valoarea curentă a „valoare2”, iar „valoare2” devine „restul calculat”. Bucla continuă până când „valoarea2” devine 0, în acel moment GCD-ul a fost găsit cu algoritmul euclidian. În cele din urmă, returnați „value1” la funcția „find_GCD”.

int găsi_GCD ( int valoare 1, int valoarea2 ) {
dacă ( valoarea2 > valoare1 ) {
schimb ( valoare1, valoare2 ) ;
}
in timp ce ( valoarea2 ! = 0 ) {
int rest = valoare1 % valoarea2 ;
valoare1 = valoarea2 ;
valoarea2 = rest ;
}

întoarcere valoare1 ;
}

În ' principal() ”funcție, declarată “ num1 ' și num1 ” variabile. Apoi, utilizați „ cout ” declarație pentru a obține informații de la utilizatori. În continuare, „ mâncând ” este folosit pentru a citi numerele întregi introduse din intrarea standard și pentru a le salva în variabilele „num1” și „num2”. După aceea, numită „ find_GCD() ” metoda care ia „num1” și „num2” ca parametri și a stocat rezultatele în „ rezultatul_meu ' variabil. În cele din urmă, a folosit „ cout ' cu ' << ” operator de inserare pentru a tipări GCD-ul estimat pe consolă:

int principal ( ) {
int num1, num2 ;
cout << „Introduceți două numere” << endl ;
mâncând >> num1 >> num2 ;

int rezultatul_meu = găsi_GCD ( num1, num2 ) ;
cout << „GCD a două numere întregi folosind algoritmul euclidian:” << rezultatul_meu << endl ;

întoarcere 0 ;
}

Ieșire

Metoda 2: Găsiți GCD recursiv în C++

O altă metodă de a calcula GCD în C++ este utilizarea recursiv a instrucțiunii if. Să verificăm exemplul de program simplu prezentat mai jos în C++.

În codul de mai jos, definiți „ calculate_Gcd() ” pentru a calcula GCD-ul a două numere. Este nevoie de doi parametri întregi, „ A ' și ' b ”. Se va verifica dacă „ b ' este egal cu ' 0 ”, apoi returnați „ A ”. În caz contrar, „ calculate_Gcd() „funcția apelează recursiv cu parametrii „ b ' și ' a%b ”:

#include
folosind spatiu de nume std ;
int calculate_Gcd ( int A, int b )
{
dacă ( b == 0 )
întoarcere A ;
întoarcere calculate_Gcd ( b, a % b ) ;
}

Apoi, declarați variabilele „num1” și „num2” în interiorul „ principal() ”funcție. După aceasta, utilizați „ cout ” pentru a afișa ” Introdu două numere „, apoi mesajul „ mâncând ” obiectul citește și salvează variabilele care sunt introduse de utilizator. Mergând înainte, a invocat „ calculate_Gcd() ” cu valorile de intrare „num1” și „num2”. Salvat în interiorul „ rezultat ” variabilă și a folosit „ cout ” pentru a afișa valoarea rezultată:

int principal ( )
{
int num1, num2 ;
cout << „Introduceți două numere:” <> num1 >> num2 ;
int rezultat = calculate_Gcd ( num1, num2 ) ;
cout << „GCD a două numere folosind metoda recursive” << rezultat << endl ;
întoarcere 0 ;
}

Ieșire

Metoda 3: Găsiți GCD folosind for Loop în C++

Programul de mai jos a folosit bucla „for” pentru a descoperi cel mai mare divizor comun:

#include
folosind spatiu de nume std ;
int principal ( ) {
int valoare1, valoare2, mcd ;
cout << „Introduceți două valori de tip întreg” <> valoare1 >> valoarea2 ;
dacă ( valoarea2 > valoare1 ) {
int temp = valoarea2 ;
valoarea2 = valoare1 ;
valoare1 = temp ;
}

pentru ( int i = 1 ; i <= valoarea2 ; ++ i ) {
dacă ( valoare1 % i == 0 && valoarea2 % i == 0 ) {
gcd = i ;
}
}
cout << „GCD a două valori folosind for Loop: „ << gcd ;

întoarcere 0 ;
}

În codul de mai sus, mai întâi, declarați trei variabile întregi „ valoare1 ”, “ valoarea2 ', și ' gcd ' în interiorul ' principal() ”funcție. Apoi, utilizați „ cout ” obiect pentru a obține valorile de intrare de la utilizatori. Valorile de intrare ale utilizatorului sunt salvate în „valoare1” și „valoare2” folosind „ >> ” operator cu “ mâncând ' obiect. Apoi, utilizați „ dacă ” declarație pentru a verifica dacă „ valoare1 ' este ' > ' decât ' valoarea2 „, verificând dacă „ temp ” deține „value2” și apoi o atribuie „value1” la „value2” și „temp” la „value1”. După aceasta, bucla „for” iterează până în interiorul „ dacă ” condiția este îndeplinită. În cele din urmă, folosiți „ cout ” declarație pentru a imprima rezultatul. După cum urmează:

Ați învățat despre metodele de programare C++ pentru găsirea GCD.

Concluzie

GCD este un concept important de matematică care ajută utilizatorii să determine cel mai mare număr întreg pozitiv care împarte ambele numere fără niciun rest în urmă. Sunt utilizate mai multe metode pentru a găsi GCD-ul în C++, cum ar fi „ Algoritmul euclidian”, „ recursiv ', și ' pentru ” buclă. În acest ghid, am ilustrat metodele de programare C++ pentru găsirea GCD.