![]() |
Re: Fakultät berechnen
Problem bei Integer ist auch, dass der Wert dann irgendwann wieder negativ wird. *deutet auf die Signatur*
|
Re: Fakultät berechnen
Eventuell liegt es daran, daß bei Double nur etwa die ersten 8 Stellen relevant sind ... die hinteren Stellen sind nicht wirklich vorhanden und können Fehler in der Berechnug hervorrufen :)
Extendet wird da mit seinen 10 (oder waren es 18 :gruebel: - aber egal, an die nötigen 101 Stellen komt es so, oder so nicht ran) relevanten Stellen auch nicht hilfreich sein. also bleibt da nur noch der Weg über eine BigMath-Lib -.-'' |
Re: Fakultät berechnen
Wozu willst du die Fakultät überhaupt als Gleitkommazahl berechnen? Das Ergebnis ist doch sowieso ganzzahlig. :gruebel:
|
Re: Fakultät berechnen
Weil die vielleicht nicht in einen Interger reinpaßt?
Nichtmal ein Int64 kann 101 Stellen aufnehmen :zwinker: Wie gesagt Lehmar ... versuch es mal mit 'ner BigMath-Lib, die mit soooo großen Zahlen ohne Rechnenfehler arbeiten kann ;) |
Re: Fakultät berechnen
doubles haben 52 bit signifikante bits, das entspricht 15-16 stellen
ein int64 hat 19-20 stellen [log(2) / log(10) * bits] 20000! hat 77338 stellen. 50000! hat 213237 stellen und braucht bei mir (mit python) 20,9 sekunden zur berechnung. schon 21! sprengt die 64bit grenzen. (21! = 51090942171709440000) |
Re: Fakultät berechnen
@ripper:
[log(2) / log(10) * bits] geht auch kürzer: [log(2) * bits], denn lgo(10) ist 1 ;) |
Re: Fakultät berechnen
wer sagt, dass ich den logarithmus zur basis 10 meine? koennte ja auch der natuerliche sein... :tongue:
|
Re: Fakultät berechnen
Hmm, da habt ihr natürlich Recht. Dann stellt sich mir allerdings die Frage, wieso ein 64-Bit-Fließkommatyp größere Werte annehmen kann als ein 64-Bit-Ganzzahltyp. Selbst wenn man das Vorzeichenbit abzieht. (Wo speichert die Fließkommazahl eigentlich die Kommaposition?)
|
Re: Fakultät berechnen
hagen hatte doch da mal eine schöne unit zur berechnung von fakultäten die auch was größer sind.
|
Re: Fakultät berechnen
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz