Ich habe einen kurzen demo-quelltext im internet gefunden. jedoch ist er in delphi und darin bin ich absoluter analphabet. ich habe den text sozugen manuell nach c++ portiert, bin mir aber nicht sicher ober stimmt. kann mir jemand sagen ob das so stimmt bzw. wenn nicht was falsch ist?
Delphi:
Function ggTerw(a,b: integer; var u,v: integer):integer;
var u0, v0:integer;
begin
if b = 0 then Begin
result := a;
u := 1;
v := 0;
End else Begin
result := ggTerw(b, a mod b, u0, v0);//rekursiv
u := v0;
v := u0 - (a div b)*v0;
End;
end;
C++:
int ggTerw( int a, int b, int u, int v)
{
int u0= 0; int v0=0;
if(b==0)
{
u = 1; v = 0;
return a;
}
else
{
u = v0;
div_t v = div(a,b); v = u0 - v.quot*v0;
return ggTerw(b, a % b, u0, v0); //rekursiv
}
}
Ich bedanke mich schon mal im vorraus ausserordentlich bei jedem helfenden, werde es aber sicher hinterher nochmal tun.
Vielen Dank
Mike
Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge
var bedeutet das die Variablen selbst innerhalb der Funktion geändert wird und nicht eine lokale Kopie mit dem Übergebenem Wert verwendet wird. Denke da solltest Du mit Zeigern arbeiten...
Bzw. in c++ mit referenzen, denn die entsprechen der var variante, d.h.:
int ggTerw( int a, int b, int &u, int &v){
...
}
mr.escape
Bzw. in c++ mit referenzen, denn die entsprechen der var variante, d.h.:
int ggTerw( int a, int b, int &u, int &v){
...
}
mr.escape