Rechnen mit großen Zahlen als Strings
Rechnen mit großen Zahlen als Strings
xxx
Zuletzt geändert von Little John am 07.05.2010 01:28, insgesamt 3-mal geändert.
- Tafkadasom2k5
- Beiträge: 1578
- Registriert: 13.08.2005 14:31
- Kontaktdaten:
Gabs das nicht schonmal als Lib? Auch auf diese Funktionsweise? Ich meine, die heißt "BigNum" (und aufgrund der Arbeit mit den Strings hatte NTQ sie irgendwann mal "BigShit" getauft
)
Aber gerade bei langen Nachkommastellen ist das garantiert nützlich! Nice work!
Gr33tz
Tafkadasom2k5
Edit:
Es war MVXA und zwar hier!

Aber gerade bei langen Nachkommastellen ist das garantiert nützlich! Nice work!

Gr33tz
Tafkadasom2k5
Edit:
Es war MVXA und zwar hier!

OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Danke für Eure freundlichen Rückmeldungen.
Ich habe keine Ahnung ob es das schonmal als Lib gab. Es hat mir einfach viel Spaß gemacht das selbst zu schreiben.
Ein Problem ist, dass diese Routinen bei wirklich großen Zahlen langsam sind. Ich wollte den Code (zumindest zunächst) möglichst einfach und gut lesbar halten. Für eine erste Geschwindigkeitssteigerung würde ich wahrscheinlich statt Mid() entsprechende Pointer verwenden.
Ich möchte an dieser Stelle noch auf die GNU Multiple Precision Arithmetic Library (GMP) hinweisen, die sicherlich schneller ist und auch mehr Möglichkeiten bietet ... dafür liegt sie nicht im PureBasic-Quelltext vor.
Gruß, Little John
Ich habe keine Ahnung ob es das schonmal als Lib gab. Es hat mir einfach viel Spaß gemacht das selbst zu schreiben.

Ein Problem ist, dass diese Routinen bei wirklich großen Zahlen langsam sind. Ich wollte den Code (zumindest zunächst) möglichst einfach und gut lesbar halten. Für eine erste Geschwindigkeitssteigerung würde ich wahrscheinlich statt Mid() entsprechende Pointer verwenden.
Ich möchte an dieser Stelle noch auf die GNU Multiple Precision Arithmetic Library (GMP) hinweisen, die sicherlich schneller ist und auch mehr Möglichkeiten bietet ... dafür liegt sie nicht im PureBasic-Quelltext vor.

Gruß, Little John
Auch das war damals der Hintergrund der 'BigNum' in der PBOSL von mir.Little John hat geschrieben: Es hat mir einfach viel Spaß gemacht das selbst zu schreiben.
Rechnen so wie ich es in der Grundschule gelernt hatte.
Dann die direkte Umsetzung mit einfachen Mitteln die jede
Basic-Programmiersprache (einfache Stringverarbeitung)
zur Verfügung stellt..
Speed iss was anderes und stand nie im Vordergrund.
Und ausserdem @Little John , Meckerfritzen gibts immer.
Rings hat geschrieben:ziert sich nich beim zitieren
Gero von Randow hat das im Klappentext der ersten Ausgabe seines Buches Das Ziegenproblem sinngemäß so beschrieben: Das formale Lösen eines Problems führt zur Ausschüttung chemischer Substanzen im Gehirn, wodurch ein Glücksgefühl erzeugt wird.Rings hat geschrieben:Auch das war damals der Hintergrund der 'BigNum' in der PBOSL von mir.Little John hat geschrieben: Es hat mir einfach viel Spaß gemacht das selbst zu schreiben.
Rechnen so wie ich es in der Grundschule gelernt hatte.
Dann die direkte Umsetzung mit einfachen Mitteln die jede
Basic-Programmiersprache (einfache Stringverarbeitung)
zur Verfügung stellt..

Nur um keine Missverständnisse aufkommen zu lassen: Die Formulierung "freundlichen Rückmeldungen" in meinem vorangehenden Posting war nicht ironisch gemeint, und ich fühle mich nicht "angemeckert" oder so.Rings hat geschrieben:Speed iss was anderes und stand nie im Vordergrund.
Und ausserdem @Little John , Meckerfritzen gibts immer.
Dass vor allem bestimmte Berechnungen mit großen Zahlen (ich meine hier die Faktorisierung) in jedem Fall (auch z.B. mit GMP) relativ langsam sind, ist letztlich sogar gut. Andernfalls wären alle möglichen heutzutage benutzten Verschlüsselungen nicht mehr sicher.

Gruß, Little John