我要求用戶輸入1到10之間的整數,但我想確保它們不輸入兩次相同的值。我怎樣才能做到這一點?以下是我迄今爲止...如何阻止用戶輸入兩次相同的值?
cin >> input;
vector<int>val;
val.push_back(input);
for(int i=0; i<val.size(); i++){
if(input==val[i])
cout << "error";
exit(1);}
所以這部作品在終止程序的條件,但因爲它總是停止,因爲輸入將被存儲在val中的程序,它會發現它是沒有用的通過循環並退出。有沒有解決的辦法? 或者我可以這樣做,以便用戶不能連續輸入相同的值,但可以輸入多次相同的值?
「種類的作品」。它完全符合您的標題:它肯定會阻止用戶輸入兩次相同的值。但它顯然不是你想要的。你做什麼*想要? – Amadan
代碼將永遠不會有用,因爲即使沒有找到相同的數字arw,代碼也會退出,即使它不是'exit(1);',cide也會檢測輸入的數字jyst是否重複。 – MikeCAT
@Amadan我想要的是不要退出程序的任何給定的輸入,這是發生了什麼,因爲if語句總是運行真正的,因爲輸入存儲在val中,找到,然後循環告訴程序退出。我需要用戶能夠輸入一次任何號碼,但是當輸入一個號碼時會中斷。 – Surge