Разрыв для цикла после х количество входов - PullRequest
0 голосов
/ 06 декабря 2018

Так что я пытаюсь заставить код останавливаться, когда пользователь преодолевает предел предположения, равный 10. На данный момент это бесконечный цикл, если только цикл не останавливается, когда пользователь получает правильное число.Любые исправления для разрыва цикла, когда пользователь достигает предела своих предположений

int main(){

    srand(time(NULL));
    int randomNum = rand()%50;


    int usr_in, guessLimit = 10;


    for(usr_in = 0; usr_in != guessLimit; ++usr_in)
    {
        cout<<"Enter a number between 0 & 50: ";
        cin >> usr_in;

        if(usr_in == randomNum)
        {
            cout<< "Correct guess you win"<< endl;
            break;
        }
        if(usr_in < randomNum)
        {
            cout<<"Guess higher"<<endl;
        }
        if(usr_in > randomNum)
        {
            cout<< "Guess lower"<<endl;
        }
   }
   if(usr_in == guessLimit)
    {
        cout<<"You lose"<<endl;

    }
}

1 Ответ

0 голосов
/ 06 декабря 2018

Вы переопределяете user_in переменную.

В этой строке: cin >> usr_in;, поэтому вы не помните предыдущее значение.

Пожалуйста, не забудьте вернуть значение, если функция вернулатип.

int main()
{
    srand(time(NULL));
    int randomNum = rand() % 50;
    const int guessLimit = 10;
    int usr_in;
    for(int guess = 0; guess < guessLimit; ++guess)
    {
        cout<<"Enter a number between 0 & 50: ";
        cin >> usr_in;

        if(usr_in == randomNum)
        {
            break;
        }
        else if(usr_in < randomNum)
        {
            cout<<"Guess higher"<<endl;
        }
        else
        {
            cout<< "Guess lower"<<endl;
        }
    }
    if(usr_in == randomNum)
    {
        cout<< "Correct guess you win"<< endl;
    }
    else
    {
        cout<<"You lose"<<endl;
    }
    return 0;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...