C++ Passwort Programm



  • Hi, ich hab ein Problem. Ich will ein Programm schreiben, dass wenn das Passwort richtig ist eine Meldung kommt. Dies ist ja kinderleicht. Jetzt wollte ich es so machen, dass man nur 3 Versuche hat und wenn man 3 mal das Falsche Passwort eingibt, wird es sozusagen gesperrt. Also das es nichtmehr weiter geht. Mein Programm sieht momentan so aus, ist noch nen bissl stümperhaft aber ich fange ja erst an 🙂 .

    #include <cstdio>
    #include <cstdlib>
    #include <iostream>
    using namespace std;

    int main(int nNumberofargs, char* pszargs[])
    {
    //Passwort festsetzen
    int p;
    p = 10;

    //Passwort Versuche
    int u;
    u = 3;

    //Passwort abfragen
    int af;
    cout << "Geben Sie das Passwort ein: ";
    cin >> af;

    //If und else das Passwort abfragen

    if (af == p)
    {
    cout << "Das eingegebene Passwort ist richtig";
    }

    else
    {

    (u - 1);
    cout << "noch 2 Versuche";
    }

    if (af == p);
    {
    cout << "Das eingegebene Passwort ist richtig";
    }

    else
    {
    (u - 1);
    cout << "noch 1 Versuch";
    }

    if (af == p);
    {
    cout << "Das eingegebene Passwort ist richtig";
    }

    else
    {
    (u - 1);
    cout << "Sie haben das Passwort 3 mal falsch eingegeben";
    }

    if ( a == 0 );
    {
    cout << "Das Passwort wurde gesperrt";
    }

    system ("pause");
    return 0;
    }



  • wie wäre es mit

    //pseudocode
    bool korrekt=false;
    int versuche=3;
    while(versuche){
    eingabe
    
    if(richtig)
    {
    korrekt=true;
    break;
    }else
    --versuche;
    
    }
    
    if(korrekt)
    blubb
    else
    sperren
    

    achja und

    int main(int nNumberofargs, char* pszargs[])
    

    solltest du öhm .. sagen wir nochmal durchdenken.



  • ^^das ist eben, von devc++ standardmäßig wenn man auf project. console appl. enthalten...einfach den inhalt löschen zu
    main()
    fertig



  • shapeless schrieb:

    achja und

    int main(int nNumberofargs, char* pszargs[])
    

    solltest du öhm .. sagen wir nochmal durchdenken.

    abgesehen davon ist nNumberOfArgs doppelt gemoppelt.



  • Loogi schrieb:

    (u - 1);
    

    Das macht keinen Sinn, da u-1 nicht u verändert, sondern nur den Wert u-1 zurückgibt.
    Du musst es entweder so

    u = u-1;
    

    oder so

    u--;
    

    machen.



  • Loogi, kennste Spaghetticode?



  • du kannst auch statt

    int p; 
    p = 10;
    

    einfach

    int p=10;
    

    schreiben

    Schau dir vlt nochmal ein Tutorial für Funktionen, Schleifen und so an...

    MfG Kuldren



  • Hallo

    Nur ein kleiner Tipp: Ich würde besere Namen für deine Variablen nehmen. Nur ein einzelner Buchstabe mag beim kleinen Projekten noch in Ordnung sein, aber später ist es besser aussagekräftige Namen zu verwenden:

    int Versuche
    

    statt:

    int u
    

    chrische



  • #include <cstdio>
    #include <cstdlib>

    Imho überflüssig wenn du mit iostreams arbeitest.



  • Wie gesagt :), ich habe noch nicht sooo viel Ahnung.

    2. Ja es stimmt, der Aufbau ist aus c++ für dummis.
    3. Danke euch 😉
    4. Werde ihn dennoch behalten, auch wenn ich nur 1 Zeile dafür brauch. Ist ja nicht der Riesenaufwand 😃

    Nochmals Danke


Anmelden zum Antworten