Brauche ein double der auf 64 zeichen genau ist



  • Ich arbeite an einem Projekt und brauche dazu ein double welcher auf 64 zahlen genau ist (Vor dem Komma) und eine nachkomma stelle hat mein problem ist das c++ den double bei etwa 15 zeichen rundet was soll ich tun.


  • Mod

    https://en.wikipedia.org/wiki/List_of_C%2B%2B_multiple_precision_arithmetic_libraries

    Noch der obligatorische Kommentar, dass der überwältigende Teil der Leute, die meinen, so etwas zu brauchen, das gar nicht braucht. Wenn du nicht gerade ein Hochschulforschungsprojekt in Zahlentheorie durchführst, stehen die Chancen sehr gut, dass du zu dieser Menge zählst.



  • Und wer explizit doubles haben will, macht keine Zahlentheorie.



  • Float oder Double wären explizit egal ich brauche nur ein auf 64 stellen vor und einer stelle nach dem komma genauen zahlen wert


  • Mod

    Wer keinen ordentlichen Satzbau bewerkstelligen kann, macht keine Zahlentheorie.



  • Ich mach auch keine Zahlentheorie ich brauch das für ein Privates Projekt.


  • Mod

    Erläutere mal, wofür Du das zu brauchen meinst.



  • Mein Projekt möchte ich jetzt als solches nicht erläutern wenns klappt werde ich hier bescheid geben was ich gemacht habe. 🙂


  • Mod

    Ich habe dich nicht gefragt, wovon dein Projekt handelt.

    Edit:

    Als Mensch zu sagen etwas sei Unmöglich zeigt die eigene dummheit

    xD Dein Ernst?



  • Ich brauch das für eine Schleifen berechnung größerer Zahlen welche aber komplett genau sein müssen.



  • Arcoth schrieb:

    Ich habe dich nicht gefragt, wovon dein Projekt handelt.

    Edit:

    Als Mensch zu sagen etwas sei Unmöglich zeigt die eigene dummheit

    xD Dein Ernst?

    Ja ernsthaft vor 200 Jahren hat auch jeder gedacht das soetwas wie das Flugzeug oder der Fernseher unmöglich sei zu denken das etwas unmöglich ist verschließt den eigenen Geist für Ideen die soetwas hervorbringen können.



  • Neurotrin schrieb:

    Float oder Double wären explizit egal ich brauche nur ein auf 64 stellen vor und einer stelle nach dem komma genauen zahlen wert

    Mit double geht das. Allerdings nicht für jeden Wert exakt.

    Mit nur 37 Stellen kannst du eigentlich jede Position im (sichtbaren und etwas darüber hinaus) Universum auf einen Ångström (0,1 nm) genau bestimmen.

    Daher haben hier viele Zweifel, dass du diese Auflösung brauchst.

    Zudem kannst du auch mit Ganzzahlen arbeiten (als 10-faches).
    Dafür brauchst du ca. 216 Bit (also 27 Byte).
    Das kannst du selber machen, es gibt dafür aber auch Bibliotheken.



  • Sagen wir es so die Zahlen die ich mit dem Double berechne haben als solches nicht nur die Bedeutung als Zahl sie haben eine andere Bedeutung aber wie gesagt ich will das Projekt nicht verraten.



  • Neurotrin schrieb:

    Sagen wir es so die Zahlen die ich mit dem Double berechne haben als solches nicht nur die Bedeutung als Zahl sie haben eine andere Bedeutung aber wie gesagt ich will das Projekt nicht verraten.

    Wenn sie eine andere Bedeutung haben, dann mach es darüber.

    Fließkommazahlen (dazu gehört der Typ double ) haben nunmal die Eigenschaft nicht exakt zu sein.
    Wenn du es exakt willst brauchst du Ganz- oder Festkommazahlen.



  • Es muss wie gesagt aber eine Kommastelle haben 😃



  • Dann speicher halt nicht x sondern 10x, und schon ist die Kommastelle weg?!



  • das ist ne idee


  • Mod

    Neurotrin schrieb:

    Es muss wie gesagt aber eine Kommastelle haben 😃

    Eine Kommastelle zu haben, ist aber nicht die auszeichnende Eigenschaft des Typs Fließkommazahl.

    Es steht fast mit Sicherheit fest, dass du sowohl von deinen Anforderungen her, als auch von der von dir vermuteten Notwendigkeit von Fließkommazahlen, um diese Anforderung zu erfüllen, beide Male komplett auf dem Holzweg bist. Aber das haben nun schon genug Leute gesagt, doch du ignorierst jeden Versuch, dir besser zu helfen. Dann werd' eben glücklich mit der Antwort, die dir gegeben wurde.



  • SG1 schrieb:

    Dann speicher halt nicht x sondern 10x, und schon ist die Kommastelle weg?!

    Ich muss die Kommastelle als solches abrufen können aber das dürfte auch möglich sein indem ich einfach die letzte zahl abschneide und extra speicher.



  • Neurotrin schrieb:

    SG1 schrieb:

    Dann speicher halt nicht x sondern 10x, und schon ist die Kommastelle weg?!

    Ich muss die Kommastelle als solches abrufen können aber das dürfte auch möglich sein indem ich einfach die letzte zahl abschneide und extra speicher.

    Du hast nicht verstanden, was SG1 dir sagen wollte.
    Nimm mal an du möchtest einen Geldbetrag in € speichern, der aber auch auf Cents genau ist. Um 1,42€ darzustellen verwende statt 1€ und 42 Cents einfach 142 Cents. Dein Nachkommateil sind dann die letzten beiden Stellen. Damit hast du das Problem umgangen mit Kommas zu hantieren und bist nicht auf die Ungenauigkeit von Fließkommazahlen angewiesen. So eine darstellung nennt man Festpunktzahl (fixed-point number).


Log in to reply