While Schleife



  • Hi Leute hab hier n kleines Programm:

    #include <iostream>
    #include <iomanip> //Für formatierte ein/ausgabe also zB hex
    using namespace std;
    
    int main()
    {
    int zahl; //Die zahl die er in hex haben will
    cout << "Welche Zahl wollen sie umgerechnet bekommen?" << endl;
    cin >> zahl; //Die zahl die er in Hex haben will
    cout << zahl <<  " entspricht " << hex/*gibt die nachfolgende Zahl in hex aus*/ << zahl << " im hexadezimalsystem" << endl;
    cout << "Moechten Sie noch etwas ausrechnen?(1=Ja)(2=Nein)" << endl;
    while(cin >> zahl );
    
    system("PAUSE");
    return 0;
    }
    

    Er fragt dann auch schön ob ich noch etwas ausrechnen möchte Ja/nein
    aber wenn ich dann ja oder nein wähle passiert nix is ja klar es fehtl was aber ich weiss nicht was^^ kann mir da wer weiterhelfen?

    danke



  • cica schrieb:

    Hi Leute hab hier n kleines Programm:

    #include <iostream>
    #include <iomanip> //Für formatierte ein/ausgabe also zB hex
    using namespace std;
    
    int main()
    {
    int zahl; //Die zahl die er in hex haben will
    cout << "Welche Zahl wollen sie umgerechnet bekommen?" << endl;
    cin >> zahl; //Die zahl die er in Hex haben will
    cout << zahl <<  " entspricht " << hex/*gibt die nachfolgende Zahl in hex aus*/ << zahl << " im hexadezimalsystem" << endl;
    cout << "Moechten Sie noch etwas ausrechnen?(1=Ja)(2=Nein)" << endl;
    while(cin >> zahl );
    
    system("PAUSE");
    return 0;
    }
    

    Er fragt dann auch schön ob ich noch etwas ausrechnen möchte Ja/nein
    aber wenn ich dann ja oder nein wähle passiert nix is ja klar es fehtl was aber ich weiss nicht was^^ kann mir da wer weiterhelfen?

    danke

    Die while Bedingung ist erfüllt, egal ob 1 oder 2 -
    der while Block ist allerdings leer / enthält eine leere Anweisung ( ; ) ...





  • Ja das denk ich auch ^^ aber kannst du mir ankreuzen oder gleich reinschreiben was ich wo einsetzen muss? finds net 😞 hab auch schon tut durchgelesen



  • Mit einer do-while würds auch gehen 😉

    #include <iostream> 
    #include <iomanip> //Für formatierte ein/ausgabe also zB hex 
    using namespace std; 
    
    int main() 
    { 
    int frage; // Nochmal?
    int zahl; //Die zahl die er in hex haben will 
    do
    {
    cout << "Welche Zahl wollen sie umgerechnet bekommen?" << endl; 
    cin >> zahl; //Die zahl die er in Hex haben will 
    cout << zahl <<  " entspricht " << hex/*gibt die nachfolgende Zahl in hex aus*/ << zahl << " im hexadezimalsystem" << endl; 
    cout << "Moechten Sie noch etwas ausrechnen?(1=Ja)(2=Nein)" << endl; 
    cin >> frage;
    cout << endl;
    }
    while(cin && frage != 2); 
    
    system("PAUSE"); // cin.get(); hätte es auch getan
    return 0; 
    }
    

    1. Verwende nicht system()'s
    2. Weise jeder Variable den Anfangswert '0' zu(wenn möglich)

    Das einzige was nicht geprüft wird, ist das wenn der Benutzer eine andere Zahl als '1' oder '2' eingibt.

    XP^


Anmelden zum Antworten