Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Zatrzymanie pętli

Ostatnio zmodyfikowano 2018-09-15 22:36
Autor Wiadomość
SAQUARO
Temat założony przez niniejszego użytkownika
Zatrzymanie pętli
» 2018-09-10 01:15:55
Witam. Czy da się ustawić w przykładowym poniższym programie aby np po x razach odtworzenia pętli się ona zatrzymała i wyświetlił się jakiś napis? Z góry dzięki za pomoc :)

C/C++
//

#include <iostream>
using namespace std;

int main()
{
    string zawodnik;
    do
    {
        cout << "Ktory bramkarz jest lepszy? " << endl;
        cout << "Szczesny czy Fabiabski?" << endl;
        cin >> zawodnik;
        {
            if( zawodnik == "Szczesny" || zawodnik == "Fabianski" )
            {
                cout << "Sluszny wybor" << endl;
            }
            else cout << "Zastanow sie jeszcze" << endl;
           
        }
       
    }
    while( zawodnik != "Szczesny" && zawodnik != "Fabianski" );
   
    return 0;
}
P-172284
YooSy
» 2018-09-10 01:44:08
Dodaj jakąś zmienną reprezentującą licznik. Zwiększaj ją o jedne w każdym cyklu pętli
i wyjdź z pętli po osiągnięciu wartości maksymalnej liczby prób.
P-172285
SAQUARO
Temat założony przez niniejszego użytkownika
» 2018-09-10 13:57:04
W którym miejscu trzeba dać tą drugą pętle? Próbowałem różne warianty i ciągle nie chce się włączyć. Domyślam się że chodzi o kolejność.
C/C++
//
#include <iostream>
using namespace std;

int main()
{
    string zawodnik;
    int proba;
    do
    {
        cout << "Ktory bramkarz jest lepszy? " << endl;
        cout << "Szczesny czy Fabiabski?" << endl;
        cin >> zawodnik;
        {
            if( zawodnik == "Szczesny" || zawodnik == "Fabianski" )
            {
                cout << "Sluszny wybor" << endl;
            }
            else cout << "Zastanow sie jeszcze" << endl;
           
            for( int proba = 3; proba >= 1; proba-- )
            {
                cout << "Pozostalo prob" << proba << endl;
                if( proba == 1 )
                {
                    cout << "Nie udalo sie" << endl;
                }
            }
           
        }
        while( zawodnik != "Szczesny" && zawodnik != "Fabianski" );
       
        return 0;
P-172286
YooSy
» 2018-09-10 18:10:14
Coraz bardziej komplikujesz zadanie. Zrób pętle na n powtórzeń. Wewnątrz pętli pobierz dane od użytkownika. Jesli są OK
break;
 i opuszczasz pętle, jeśli nie pętla samoczynnie zakończy działanie po tych n niepowodzeniach. Wystarczy dowolna jedna pętla.
P-172287
SAQUARO
Temat założony przez niniejszego użytkownika
» 2018-09-10 18:45:53
A jak zrobić taką pętle? I jak to zainicjować żeby później ten licznik się cofał o 1 a nie od razu wyświetla się 3,2,1-koniec.
P-172288
YooSy
» 2018-09-10 20:39:11
Bardzo zawile tłumaczysz. Pokaż jakiś przykład (kod) takiego nieporządanego działania.
Małymi kroczkami dojdziemy do rozwiązania problemu.

» KursyKurs C++ kurs
P-172289
MrBowPL
» 2018-09-15 22:36:47
Coś takiego ?
C/C++
#include <iostream>
using namespace std;

int main()
{
    string zawodnik;
    int x = 3;
    do
    {
        cout << "Ilosc prob; " << x << endl;
        cout << "Ktory bramkarz jest lepszy? " << endl;
        cout << "Szczesny czy Fabiabski?" << endl;
        cin >> zawodnik;
        {
            if( zawodnik == "Szczesny" || zawodnik == "Fabianski" )
            {
                cout << "Sluszny wybor" << endl;
            }
            else
            {
                cout << "Zastanow sie jeszcze" << endl;
                x--;
            }
            if( x == 0 )
            {
                cout << "Jakis napis"; // O to chodzilo ?
                break;
            }
           
        }
       
    }
    while( zawodnik != "Szczesny" && zawodnik != "Fabianski" );
   
    return 0;
}
P-172326
« 1 »
  Strona 1 z 1