Mit größeren Zahlen in C umgehen.



  • Hallo Leute,

    ich habe eine Stelle in der Berechnung die a = x^3 + y^2 ausfürt.
    Leider ist das x ziemlich groß, so dass ich selbst mit long double
    meine wichtigen Nachkommastellen verliere.

    Ich habe meinen Algorithmus versucht so
    gut wie möglich zu zerlegen und umzuformen aber ich komme an dem x^3
    nicht vorbei.

    Gibt es ein effizientes Verfahren in C(99) mit Übergrößen zu arbeiten?

    Wäre für ein paar Tipps dankbar.



  • darkfate schrieb:

    Leider ist das x ziemlich groß, so dass ich selbst mit long double
    meine wichtigen Nachkommastellen verliere.

    Morgen, bist du ganz sicher dass du "Hunderte" an Nachkommastellen brauchst?

    mit long double solltest du um die 20 richtige Nachkommastellen haben.



  • schau mal hier: http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic#Libraries
    ich würde an deiner stelle aber lieber mit integers arbeiten, also z.b. die ausgangswerte mit 10000 malnehmen um 4 kommastellen zu behalten und dann, zum rechnen, eine bigint-library nehmen.
    🙂



  • lin123 schrieb:

    Morgen, bist du ganz sicher dass du "Hunderte" an Nachkommastellen brauchst?
    mit long double solltest du um die 20 richtige Nachkommastellen haben.

    Hi,

    ja es ist definitiv wichtig aber auch nur an dieser einen Stelle. Danach schrumpft diese Zahl nur noch. Ich bräuchte dennoch insgesamt die 5-6 Nachkommastelle als sicher und dafür langt es im Moment nicht.


Anmelden zum Antworten