Forum: Sonstige Fragen zu Delphi
by Amateurprofi,
16. Okt 2007
Vielleicht hast du es nicht korrekt umgesetzt.
Jedenfalls bei mir arbeitet die GGT-Routine fehlerfrei, auch mit negativen Zahlen.
Forum: Sonstige Fragen zu Delphi
by Amateurprofi,
16. Okt 2007
Hast du ein Beispiel bei welchen negativen Zahlen es zum Crash kommt ?
Ich sehe im Moment keinen Grund, warum die von ws1976 vorgestellte GGT-Version Probleme mit negativen Zahlen haben sollte.
Forum: Sonstige Fragen zu Delphi
by Amateurprofi,
15. Okt 2007
@alzaimar:
Nein, im Gegenteil. Ich bin mir, so wie auch du, sicher daß "a*b div c" nicht identisch ist mit "b div c * a", und ich bin auch sicher daß die Konstrukte i.d.R. unterschiedliche Resultate bringen.
Ich bin mir aber sehr sicher, daß die Konstrukte identische Ergebnisse bringen, wenn c ein "GGT" von a und b ist, und das ist bei dem diskutierten Code der Fall.
Der Vorteil der...
Forum: Sonstige Fragen zu Delphi
by Amateurprofi,
15. Okt 2007
@ws1976
Ich schlage folgende Änderungen vor
In der Funktion ggt sollten die lokalen Variablen den Typ Int64 haben.
Warum?:
Weils sonst falsche Ergebnisse bringt, wenn nur einer der Parameter > maxint ist.
in der Funktion kgv sollte nicht stehen
result:=b0*b1 div ggt(b0,b1);