Frage zu Swox's GMP



  • Hi,

    Ich verwende das C++ Class Interface von GMP. Nun verwende ich die Floatklasse mpf_class. Als nächstes wollte ich die Berechnungen ausgeben lassen aber er gibt nicht alle Nachkommastellen aus. Was habe ich falsch gemacht? Wie wandle ich ne GMP Floatzahlklasse in einen C-String oder eine Stringklasse um?

    #include <iostream>
    #include <gmpxx.h>
    
    using namespace std;
    
    int main (void) {
    	mpf_class a;
    	mpf_class b;
    	mpf_class c;
    	a.set_prec(9999);
    	b.set_prec(9999);
    	c.set_prec(9999);
    	a = 1;
    	b = 1234;
    	c = a / b;
    
    	cout << "Precesion of a(bits):" << a.get_prec () << "\n";
    	cout << "Precesion of b(bits):" << b.get_prec () << "\n";
    	cout << "Precesion of c(bits):" << c.get_prec () << "\n\n";
    	cout << "Result c:" << c ;
    	return 0;
    }
    


  • Ich denke, dass er einfach nur die Nullen am Ende weglässt.



  • Eben nicht, ich weiß zwar nicht, wie genau der Windows Rechner oder Excel rechnet, aber beide haben weitaus mehr Nachkommastellen, die keine Nullen enthalten!


Anmelden zum Antworten