Ausgabe von x Kommastellen



  • wie kann man eine ausgabe machen so das man ein x eingibt und dann eine zahl mit x kommastellen ausgegeben wird??



  • hmm habs selber rausgekriegt 😮



  • Lies ne Zahl ein und übergebe sie an precision, hier ein beispiel:

    double zahl = 3.32423432;
    int x;
    cin >> x;
    cout.precision(x); // bedeutende Nachkommastellen für nachfolgende Ausgaben
    cout.setf(ios::fixed); // Festkommadarstellung, ohne diese Zeile Exponentialdarstellung
    cout << zahl;
    

    Es kann sein das du iomanip einbinden musst.

    Code-Hacker



  • hilfeeee der rundet die letzte kommastelle immer auf das soll aber nicht der fall sein



  • Dann rechne x Anzahl zahl*10 konvertiere zu integer und rechne wieder zurück, so:

    double zahl = 3.32423432; 
    int x;
    cin >> x;
    for(int i=0; i<x; i++)
      zahl = zahl*10;
    int help = zahl;
    zahl=help;
    for(int i=0; i<x; i++)
      zahl = zahl/10;
    

    Ob schön oder nicht, sollte aber funktionieren.

    Code-Hacker



  • #include <iostream>
    #include <conio.h>
    #include <cmath>
    using namespace std;
    
    double runden( double a, int stellen )
    {
        a *= pow( 10.0, stellen );  
        a += 0.5; 
        a =  floor( a ); 
        a /= pow( 10.0, stellen );
        return a; 
    }
    
    int main()
    {
        double zahl;
        cout << "Bitte Zahl eingeben: ";
        cin >> zahl;
        cout << "Gerundet: " << runden( zahl, 2 );
    
        getch();
    }
    

    ist das auch ok zum Runden?


Log in to reply