it4baer
Goto Top

Javascript rechnen mir sehr sehr großen Zahlen

Hallo,

ist es möglich in Javascript mit extrem großen Zahlen zu rechnen . z.B. 783^98

bekannterweise werden ja normale Floatzahlen falsch gerundet oder ab ner gewissen Größe abgeschnitten...

leider habe ich noch keine echten Ansätze...

Vielen Dank

Content-Key: 329602

Url: https://administrator.de/contentid/329602

Printed on: May 5, 2024 at 03:05 o'clock

Member: TheJoker2305
TheJoker2305 Feb 16, 2017 at 08:15:25 (UTC)
Goto Top
Hallo,

um welche Berechnungen geht es genau?
Sind alle Stellen der Zahlen "gefüllt" oder handelt es sich um viele "0"-Stellen.

768.000.000.000.000.000 .....

dann könnte man nur die führenden Stellen für die Berechnung nehmen und am Ende die "0" wieder anfügen.

Gruß thejoker2305
Member: it4baer
it4baer Feb 16, 2017 at 08:36:29 (UTC)
Goto Top
Naja, wie schon gesagt, es geht eben genau um die Einerstellen...

3,878400745936512704068110287983e+283

ebenso sind Moduloberechnungen erwünscht... wobei ich da "jede einzelne" multiplikation einfach aufaddieren könnte (somit kommts nie zu großen Zahlen). Aber trotzdem wäre eine Berechnung erwünscht, in dem fall hier oben mit 283 Nachkommastellen (es muss ja nicht "sehr schnell sein")
=> vermutlich werd ich auf C++ umsteigen "müssen" ... aber es ist schon fast eine "Machbarkeitsstudie" mich würde interessieren ob Javascript das "hinbekommen" würde
Member: AndreasHoster
AndreasHoster Feb 16, 2017 at 10:48:58 (UTC)
Goto Top
Erster Ansatz: Google fragen
Eine Suche mit JavaScript decimal ergibt gleichmal als obersten Treffer:

GitHub - MikeMcl/decimal.js: An arbitrary-precision Decimal type for ...
https://github.com/MikeMcl/decimal.js/
The library is similar to bignumber.js, but here precision is specified in terms of significant digits rather than decimal places, and all calculations are rounded to ...

Klingt doch sehr nach dem, was Du haben willst (ohne es mir genau angeschaut zu haben). Und mit bignumber.js gibt es gleich einen alternative Suchbegriff, falls die Lösung nicht überzeugt.