2016-03-29 15 views
0
#include <iostream> 
#include <string> 

using namespace std; 

int main() { //Program starts 
    cout << "-------------------------------" << endl; 
    cout << "Welcome to Ninjas vs. Samurais!" << endl; //The intro 
    cout << "-------------------------------" << endl; 

    string newAdventure; 
    string chosenKind; 

    cout << "Hello, new solder! Are you ready for your adventure to begin,  yes or no?\n"; //Asks you if you are ready 

    cin >> newAdventure;//Takes in if you are ready or not 

    if (newAdventure == "yes" || newAdventure == "Yes" || newAdventure == "Yes!") { //Asks if they are ready 
     cout << "Great!\n" << endl; 
    } 
    else if (newAdventure == "no" || newAdventure == "No" || newAdventure ==  "No!") { //Asks if they are ready 
     cout << "Too bad!\n" << endl; 

    } 
    else { 
     cout << "Please type a yes or no answer!\n"; 
    } 
    system("PAUSE"); 
    return 0; 
} 

Kullanıcı geçerli bir yanıt girmediyse, bunları yeniden başlatmaya nasıl başlatabilirim? Bir döngü kullanmak zorunda mıyım? Eğer öyleyse, bunu nasıl yaparım?Oyun menülerini görüntülerken geçersiz girişler nasıl kullanılır?

+0

'while'? ... – pfnuesel

+0

@pfnuesel, demek istediğim, kullanıcı geçerli bir cevap girmezse, soruyu tekrar nasıl sorabilirim? –

+0

Çıkış koşullu bir süre veya başka bir döngü türüne ihtiyacınız olacaktır. Bir sonraki sefer –

cevap

0

Böyle bir koşul ekleyebiliriz:

while(true)  
{ 

cout << "Hello, new solder! Are you ready for your adventure to begin,  yes or no?\n"; //Asks you if you are ready 

cin >> newAdventure;//Takes in if you are ready or not 

if (newAdventure == "yes" || newAdventure == "Yes" || newAdventure == "Yes!") { //Asks if they are ready 
    cout << "Great!\n" << endl; 
    break; 
} 
else if (newAdventure == "no" || newAdventure == "No" || newAdventure ==  "No!") { //Asks if they are ready 
    cout << "Too bad!\n" << endl; 
    break; 
} 
else { 
    cout << "Please type a yes or no answer!\n"; 
} 

} 
+0

Yanıtlarınız için herkese teşekkürler. –

+0

lütfen başkalarına yardım etmek için herhangi bir cevabı kabul edin – FreezY

0

Evet bir döngü kullanmak gerekir. gibi bir şey: Cevabınız geçerlidir kez break kelime döngü çıkılacak

while(cin >> newAdventure)//Takes in if you are ready or not 
    { 
    if (newAdventure == "yes" || newAdventure == "Yes" || newAdventure == "Yes!") { //Asks if they are ready 
     cout << "Great!\n" << endl; 
     break; 
    } 
    else if (newAdventure == "no" || newAdventure == "No" || newAdventure ==  "No!") { //Asks if they are ready 
     cout << "Too bad!\n" << endl; 
     break; 
    } 
    else { 
     cout << "Please type a yes or no answer!\n"; 
    } 
    } 

, aksi takdirde böyle sürüyor.

İlgili konular