2016-09-27 2 views
0

Я должен собирать ввод чисел, пока пользователь не наберет «0». Также, как только пользователь решает выйти из цикла, пользователь может решить, начать ли это снова или нет. Как исправить мою программу? Или есть другой способ, который более эффективен для доставки этой программы?Как сделать этот цикл работы?

`

int regular, special, vip; 
int i; 
bool flag = true; 

while(flag) 
{ 
    cout << "input please: "; 
    cin >> i; 

    if ((i <10000) && (i > 0)) 
    { 
     regular++; 
    } 

    if ((i >10000) && (i<=50000)) 
    { 
     special++; 
    } 

    if (i > 50000) 
    { 
     vip++; 
    } 

    if (i==0); 
    { 
     flag = false; 
     cout << "Your branch has " << regular << " Regular Customers, " 
      << special << " Special Customers and " << vip << " VIP Customers" 
     << "Try again? [1 = yes/ 0 = no] " << endl; 
    } 
} 

}`

+2

хорошее место для начала было бы, чтобы удалить точку с запятой из ', если (я == 0);' – paddy

+1

@paddy OnAncientJoke: 'если (incoming_detected()); launch_nuclear_counterstrike(); ' –

+0

jfc im blind thanks! – asteron9

ответ

0

Это должно работать. cout перед установкой flag на false.

также удалить с запятой после if(i==0)

int regular, special, vip; 
int i; 
bool flag = true; 

while(flag) 
{ 
    cout << "input please: "; 
    cin >> i; 

    if ((i <10000) && (i > 0)) 
    { 
     regular++; 
    } 

    if ((i >10000) && (i<=50000)) 
    { 
     special++; 
    } 

    if (i > 50000) 
    { 
     vip++; 
    } 

    if (i==0) 
    { 
     cout << "Your branch has " << regular << " Regular Customers, " 
      << special << " Special Customers and " << vip << " VIP Customers" 
      << "Try again? [1 = yes/ 0 = no] " << endl; 
     flag = false; 
    } 
} 
0

Если я понимаю, что вы просите правильно, вы просто должны читать по выбору пользователя, чтобы попробовать еще раз и сделать что-то, исходя из этого. О, а также удалить точку с запятой после if(i==0):

if (i==0) 
{ 
    flag = false; 
    cout << "Your branch has " << regular << " Regular Customers, " 
     << special << " Special Customers and " << vip << " VIP Customers" 
    << "Try again? [1 = yes/ 0 = no] " << endl; 

    /* Do what the user wants */ 
    cin>> i; 
    if(i == 1) 
    { 
     /* Reset regular, special, and vip variables if desired */ 

     flag = true; 
    } 
}