Ich versuche gerade eine Funktion zuschreiben, die den größten gemeinsamen Teiler ausrechnet.
So sieht der folgende Code aus der Funktion aus.
i
Code: Alles auswählen
nt ggt(int wert1,int wert2)
{
int restwert;
if (wert1 > wert2)
{
do
{
restwert = wert1%wert2;
wert1 = wert2;
wert2 = restwert;
}
while(restwert == 0);
cout << restwert << endl;
}
else
{
do
{
restwert = wert2%wert1;
wert2 = wert1;
wert1 = restwert;
}
while(restwert == 0);
}
}
Wenn ich es kompliere,errechnet er mir nur den ersten Restwert. Ich will , dass er aber den Restwert so lange ausrechnet bis der Restwert 0 ist. Es soll mit anderen Worten die Bedingung erfüllt werden.
Nun weiß ich nicht warum er die weiteren Restwerte nicht ausrechnet bis die Bedingung erfüllt ist.
Bitte um eure Hilfe und danke im voraus