CPP-Einsteigerproblem "Timer"



  • Hallo,
    ich bin noch total neu in diesem Forum und wenn ich hier gerade im falschen Bereich poste,so weist mich bitte freundlich darauf hin und verschiebt diesen Beitrag wenn möglich.

    Mein Problem:
    Ich habe einen sehr sehr simplen Timer geschrieben,der einem die Wahl zwischen Stunden zählen,Minuten zählen und Sekunden zählen + Eingabe der gewünschten Startzahl (Bsp:Cin >> 4 = 4 Minuten zum runterzählen) ermöglicht.

    Nun bin ich beim Minutenzähler darauf gekommen,2 Integer-Werte in einer for-Schleife zu benutzen.

    Hier mein Code:

    void minutes_timer()
    {
       system("cls");
       int startminuten;
       cout << "Geben sie an,bei wievielen Minuten sie starten moechten : ";
       cin >> startminuten;
       for(int startm = startminuten,starts = 60;startm >= 0;--starts)
       {
           printf("00:%d:%i \r",startm,starts);
           Sleep(1000);
           if(starts == 0)
           {
               --startm;
           }
       }
       cout << endl << "\aZeit abgelaufen !";
    };
    

    Funktioniert bis jetzt eigentlich super.
    Einziges Problem:Sobald er mit den Sekunden bei 0 angekommen ist,wird die Minute zwar auch runtergezählt,doch die Sekunden zählt er weiter in den Minusbereich hinein.

    Entschuldigt mich bitte,sollte ich einen sehr dummen und ungeschickten blöden Fehler machen,aber wie der Titel sagt,bin ich ein blutiger Anfänger !

    Ich würde mich jedenfalls sehr über Tipps,Hinweise,Vorschläge - oder allgemein gesagt - über Hilfe freuen 🙂

    DJ 🙂



  • Dann musst du, wenn du wenn der Wert -1 ist ihn auf 59 setzen. Und zwar vor der Ausgabe :p



  • Wirklich zu blöd,dass ich da nicht selber drauf gekommen bin..

    Jedenfalls vielen dank für die schnelle Antwort,klappt wunderbar 😉

    DJ 🙂


Anmelden zum Antworten