Thema: Delphi Schriftliche Division

Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#11

Re: Schriftliche Division

  Alt 5. Jan 2006, 16:37
Wie dividiert man schriftlich?

Code:
1234567890 / 54321 = ???
So, ich fange links an und kopiere so lange die Stellen in ein zweites Array, bis dieses Array GRÖßER als der Divisor ist (Divisor? Na, jedenfalls die 54321). Das ist bei 123456 der Fall.

Nun ziehe ich so lange 54321 davon ab, bis das Ergebnis negativ würde. Das kann ich 2x machen. Es bleiben 14814 übrig. (2 ist also die erste Stelle meines Ergebnisses).

Nun kopiere ich die nächste Stelle hier (14814) rein (immer rechts auffüllen).
148147. Dann wieder abziehen, bis nix mehr geht (2x und der Rest ist 39505)
Zwischenergebnis '22'

Nun kopiere ich die nächste Stelle hier (39505) rein (immer rechts auffüllen).
395058. Dann wieder abziehen, bis nix mehr geht (7x und der Rest ist 14811)
Zwischenergebnis 227
.... (usw)

Für die Nachkommastellen mach ich das Gleiche, nur das ich nicht mehr die nächste Stelle nehme (da sind wir ja durch), sondern einfach eine 0 ranbepse und mir merke, das wir in den Nachkommabereich rutschen.

Das wird so lange wiederholt, bis beim Abziehen 0 rauskommt. Dann sind wir fertig.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat