precision



  • Hallo

    Wie schreibe ich setprecision in mein Quelltext? Oder den Begriff Cout.precision? Wo ist der Unterschied ? In welcher Header stehen beide deklariert?

    Beispiel: Bitte einsetzen!

    #include <stdio.h>
    #include <iostream.h>
    #include <stdlib.h>
    
    int main ()
    
    {
        double a,b;
            system("cls");  
            cout <<"Geben sie die mA ein\n";
            cin >> a;
            b=a/X;
            cout <<"Das Ergebniss lautet "<<a<<"mA = "<<b<<"A""\n";
    return 0;               
    }
    


  • So wie <Stefan> es gepostet hat vor der Ausgabe

    cout.precision(10);
    

    beispielsweise für 10 Stellen.
    oder du machst es einfach mit float:

    #include <stdio.h>
    #include <iostream.h>
    #define Y 1000000;
    
    int main ()
    {
        float c,d;
        cout <<"Geben sie die \346A ein\n";
        cin >> c;
        d=c/Y;
        printf("Das Ergebniss lautet %.0f \346A = %f A\n",c,d);
        return 0;
    }
    

    ps die Header iostream für cin,cout hast du schon.



  • {
                double c,d;
                    system("cls");
                    cout <<"Geben sie die \346A ein\n";
                    cin >> c;
                    d=c/Y;
                    cout.precision(10);
                    cout<<"Das Ergebniss lautet "<<c<<"\346A = "<<d<<"A""\n";
            }
    

    Also so oder was??? Geht aber nicht 😞



  • Hallo,
    1. <stdio.h> ist in deinem Beispiel überflüssig
    2. <iostream.h> besser durch <iostream> ersetzen
    3. Was ist X?

    Hier mal der Code:

    #include <cstdlib>
    #include <iostream>
    using namespace std;
    
    int main ()
    {
    
        double a,b;
        cout <<"Geben sie die mA ein\n";
        cin >> a;
        b=a/42;
        cout.precision(10);
        cout <<"Das Ergebniss lautet "<<a<<"mA = "<<b<<"A""\n";
    
    return 0;               
    }
    


  • sorry aber mir antwortet niemand! Bitte schreibt mir den Code in den Quellcode rein!

    Danke

    {
                double a,b;
                    system("cls");  
                    cout <<"Geben sie die mA ein\n";
                    cin >> a;
                    b=a/X;
                    cout <<"Das Ergebniss lautet "<<a<<"mA = "<<b<<"A"<<"\n";
    
                }
    

    einfügen : setprecision, cout.precision

    so einfügen das er Kommastellen anzeigt

    Danke

    Euer
    Landser



  • sorry aber mir antwortet niemand!

    Erst lesen, dann meckern.

    cout.precision habe ich oben drin und setprecision geht so:

    #include <iomanip>
    #include <iostream>
    using namespace std;
    
    int main()
    {
        cout << setprecision(10) << 22.43 << endl;
    }
    

    Dran denken: Für Manipulatoren mit Parametern (wie setprecision) musst du <iomanip> einbinden.

    Einbauen sollte jetzt kein Problem sein.



  • Jetzt spuckt er mir das aus :

    Aufgabe 1.cpp(15) : error C2679: Binaerer Operator '<<' : Kein Operator definiert, der einen rechtsseitigen Operator vom Typ 'struct std::_Smanip<int>' akzeptiert (oder keine geeignete Konvertierung mo

    Was hat das zu bedeuten?

    Hier mein ganzer Quelltext, gegen Missverständnisse:

    #include <stdio.h>
    #include <stdlib.h>
    #include <iomanip>
    #include <cstdlib>
    #include <iostream>
    using namespace std;
    
    #define X 1000;
    #define Y 1000000;
    #define Z 1000000000;
    
    int main ()
    
    {
    
        char z[256];
        int x;
            cout << "Wie heissen Sie?"<< "\n";
            cin  >> z;
            system("cls");
            cout << "Hallo "<<z<<"\n\n";
            cout << "Was wollen sie tun?"<< "\n\n";
            cout << "Um einen Kontakt kurzeitig zu speichern dr\201cken sie die 1\n\n";
            cout << "Um mA in A umzurechnen dr\201cken sie die 2\n\n";
            cout << "Um \346A in A umzurechnen dr\201cken sie die 3\n\n";
            cout << "Um kA in A umzurechnen dr\201cken sie die 4\n\n";
            cout << "Um A in mA umzurechnen dr\201cken sie die 5\n\n";
            cout << "Um A in \346A umzurechnen dr\201cken sie die 6\n\n";
            cout << "Um A in kA umzurechnen dr\201cken sie die 7\n\n";
            cout << "Um mA in \346A umzurechnen dr\201cken sie die 8\n\n";
            cout << "Um \346A in mA umzurechnen dr\201cken sie die 9\n\n";
            cout << "Um mA in kA umzurechnen dr\201cken sie die 10\n\n";
            cout << "Um kA in mA umzurechnen dr\201cken sie die 11\n\n";
            cout << "Um \346A in kA umzurechnen dr\201cken sie die 12\n\n";
            cout << "Um kA in \346A umzurechnen dr\201cken sie die 13\n\n";
            cout << "Um den Widerstand mittels Volt und Ampere zu berechnen dr\201cken sie die 14\n\n";
            cout << "Um den Ampere mittels Volt und Ohm zu bererechnen dr\201cken sie die 15\n\n";
            cout << "Um die Spannung mittels Widerstand und Ampere zu berechnen dr\201cken sie die 16\n\n";
            cout << "Um das Programm zu verlassen dr\201cken sie die 17\n\n";
            cin >> x;
    
            switch (x)
    {
    
        case 1 : 
            {
    
                char name[256],nachname[256],strasse[256],ort[256],bedingung;
                int tel,hausnummer,plz;
    
                {
                do
                {
    
                    system("cls");
                    cout << "Bitte geben sie den Vornamen ein\n";
                    cin >> name;
                    cout << "Bitte geben sie den Nachnamen ein\n";
                    cin >> nachname;
                    cout << "Bitte geben sie den Strassennamen ein\n";
                    cin >> strasse;
                    cout << "Bitte geben sie die Hausnummer ein\n";
                    cin >> hausnummer;
                    cout << "Bitte geben sie die Postleitzahl ein\n";
                    cin >> plz;
                    cout << "Bitte geben sie den Ort ein\n";
                    cin >> ort;
                    cout << "Bitte geben sie die Telefonnummer ohne Sonderzeichen ein\n";
                    cin >> tel;
                    cout << "Ist diese Eingabe korrekt?\n J für Ja\n N für Nein" <<"\n";
                    cin >> bedingung;
    
                }
                while(bedingung != 'J');
                cout << "Eintrag gesichert\n";
                }
            }
            break;  
        case 2:
            {
                double a,b;
                    system("cls");  
                    cout <<"Geben sie die mA ein\n";
                    cin >> a;
                    b=a/X;
                    cout.precision(10);
                    cout <<"Das Ergebniss lautet "<<a<<"mA = "<<b<<"A""\n";
    
                }
            break;
        case 3:
            {
                double c,d;
                    system("cls");
                    cout <<"Geben sie die \346A ein\n";
                    cin >> c;
                    d=c/Y;
                    cout<<"Das Ergebniss lautet "<<c<<"\346A = "<<d<<"A""\n";
            }
            break;
        case 4:
            {
                double e,f;
                    system("cls");
                    cout <<"Geben sie die kA ein\n";
                    cin >> e;
                    f=e*X;
                    cout <<"Das Ergebniss lautet "<<e<<"kA = "<<f<<"A""\n";
            }
            break;
        case 5:
            {
                double g,h;
                    system("cls");
                    cout <<"Geben sie die A ein\n";
                    cin >> g;
                    h=g*X
                    cout <<"Das Ergebniss lautet "<<g<<"A = "<<h<<"mA""\n";
            }
            break;
        case 6:
            {
                double i,j;
                    system("cls");
                    cout <<"Geben sie die A ein\n";
                    cin >> i;
                    j=i*Y
                    cout <<"Das Ergebniss lautet "<<i<<"A = "<<j<<"\346A""\n";
            }
            break;
        case 7:
            {
                double k,l;
                    system("cls");
                    cout <<"Geben sie die A ein\n";
                    cin >> k;
                    l=k/X
                    cout <<"Das Ergebniss lautet "<<k<<"A = "<<l<<"kA""\n";
            }
            break;
        case 8:
            {   
                double m,n;
                    system("cls");  
                    cout <<"Geben sie die mA ein\n";
                    cin >> m;
                    n=m/X
                    cout <<"Das Ergebniss lautet "<<m<<"mA = "<<n<<"\346A""\n";
            }
            break;
        case 9:
            {
                double o,p;
                    system("cls");
                    cout <<"Geben sie die \346A ein\n";
                    cin >> o;
                    p=o*X
                    cout <<"Das Ergebniss lautet "<<o<<"\346A = "<<p<<"mA""\n";
            }
            break;
        case 10:
            {
                double q,r;
                    system("cls");  
                    cout <<"Geben sie die mA ein\n";
                    cin >> q;
                    r=q/Y
                    cout <<"Das Ergebniss lautet "<<q<<"mA = "<<r<<"kA""\n";
            }
            break;
        case 11:
            {
                double s,t;
                    system("cls");  
                    cout <<"Geben sie die kA ein\n";
                    cin >> s;
                    t=s*Y
                    cout <<"Das Ergebniss lautet "<<s<<"kA = "<<t<<"mA""\n";
            }
            break;
        case 12:
            {
                double u,v;
                    system("cls");  
                    cout <<"Geben sie die \346A ein\n";
                    cin >> u;
                    v=u/Z
                    cout <<"Das Ergebniss lautet "<<u<<"\346A = "<<v<<"kA""\n";
            }
            break;
        case 13:
            {
                double aa,bb;
                    system("cls");  
                    cout <<"Geben sie die kA ein\n";
                    cin >> aa;
                    bb=aa*Z
                    cout <<"Das Ergebniss lautet "<<aa<<"kA = "<<bb<<"\346A""\n";
            }
            break;
        case 14:
            {
                double cc,dd,ee;
                    system("cls");  
                    cout <<"Geben sie die Volt ein\n";
                    cin >> cc;
                    cout <<"Gebe sie die Amperé ein\n";
                    cin >> dd;
                    ee=cc/dd;
                    cout <<"Das Ergebniss lautet "<<cc<<" Volt : "<<dd<<" Amperé = "<<ee<<" Ohm""\n";
            }
            break;
        case 15:
            {
                double ff,gg,hh;
                    system("cls");
                    cout <<"Geben sie die Volt ein\n";
                    cin >> ff;
                    cout <<"Gebe sie die Ohm ein\n";
                    cin >> gg;
                    hh=ff/gg;
                    cout <<"Das Ergebniss lautet "<<ff<<" Volt : "<<gg<<" Ohm = "<<hh<<" Amperé""\n";
            }
            break;
        case 16:
                    {
                double ii,jj,kk;
                    system("cls");
                    cout <<"Geben sie Ohm ein\n";
                    cin >> ii;
                    cout <<"Gebe sie Amperé ein\n";
                    cin >> jj;
                    kk=ii*jj;
                    cout <<"Das Ergebniss lautet "<<ii<<" Ohm * "<<jj<<" Ampere = "<<kk<<" Volt""\n";
    
            }
            break;
        case 17:
            {
            }
            }       
            return 0;
            }
    

    [ Dieser Beitrag wurde am 07.07.2003 um 23:24 Uhr von Landser editiert. ]



  • hm das muss wohl am compiler liegen (g++ frisst's). helfend wäre aber auch, wenn du uns die fehlerhafte zeile hervorhebst 🙄
    zum style sag ich jetzt lieber nix 😉



  • welchen compiler fährst du?

    visual wie cygwin haben damit kein problem...

    kleine anmerkungen am rande:

    benutze kein system("cls").. schau dazu ins konsolenfaq

    nimm <cstdio> und <cstdlib> statt stdio.h ...etc

    schau dir die string klasse an für stringeingaben

    versuche, immer wiederkehrende programmteile aus der main raus in funktionen zu bündeln



  • Ich habe noch nicht viel Ahnung das ist mein Erstes Programm, ist sowas wie eine Haussaufgabe aber mit den Kommastellen komm ich ned weiter! Kann mir nicht einer das mit dem precision einschreiben oder genau erklären, er macht es einfach nicht auch wenn der Compiler keine Fehler anzeigt! Die Kommastellen werden einfach nicht korrekt angezeigt! Sie werden immernoch mit Hochzahlen angegeben! 😞



  • Sie werden immernoch mit Hochzahlen angegeben!

    Der Manipulator fixed bzw.
    der Aufruf cout.setf(ios_base::fixed, ios_base::floatfield) sollte dein Problem
    beheben.


Anmelden zum Antworten