Thema: Delphi Schriftliche Division

Einzelnen Beitrag anzeigen

Benutzerbild von St.Pauli
St.Pauli

Registriert seit: 26. Dez 2004
351 Beiträge
 
Delphi 7 Personal
 
#8

Re: Schriftliche Division

  Alt 5. Jan 2006, 14:29
Zitat von DGL-luke:
-stack durch divisor teilen
Das wär schon das erste Problem. Ich kann nicht eine Zahl durch eine Zahl teilen, wenn ich gerade erst die Funktion dazu schreibe. Das mag jetzt ein bisschen wirr vorkommen, aber wenn der Divisor zum Beispiel 51431435415415251541566240261341656264134313421323 12321468671795... wäre, bekäme ich mit den herkömmlichen Variabeln und Funktionen Probleme.

Hier mal der Ausgang. Zwei Zahlen vom Typ BigInt...

Delphi-Quellcode:
type
  Zahl = 0..9; // Eine Dezimalstelle...
  BigInt = array [1..BigIntSize] of Zahl;
... wobei jede Stelle des arrays auch die Dezimalstelle der Zahl darstellt. Nun will ich 2 Zahlen vom Typ BigInt dividieren.

Also, nur noch mal kurz die Vorhergehensweise zusammengefasst:
  • Als Grungerüst benutzte ich eine repeat-Schleife, bis der Zähler i null erreicht (?)
  • Ich hole mir eine Zahl, beginnend von der größten Dezimalstelle ab, und füge die in ein Zwischen-Array ab. Hier stoße ich schon auf technische Umsetztungs-Probleme.
  • Dann probiere ich in einer neuen Schleife, wie lange ich brauche, bis der Divisor größer ist als der Dividend. Die Anzahl der Schritte ist mein Zwischenergebnis. Der Dividend - den erhhöhten Divisor ist mein Rest.
  • Dann muss ich wieder so lange Zahlen vom Dividend herunter holen, bis ich wieder teilen kann...
Habt ihr eine Idee, wie ich die Teile nun umsetzten kann?
Gruß St.Pauli
  Mit Zitat antworten Zitat