1. 程式人生 > 其它 >7-71 猜數字遊戲 (15分)

7-71 猜數字遊戲 (15分)

技術標籤:pta

7-71 猜數字遊戲 (15分)
猜數字遊戲是令遊戲機隨機產生一個100以內的正整數,使用者輸入一個數對其進行猜測,需要你編寫程式自動對其與隨機產生的被猜數進行比較,並提示大了(“Too big”),還是小了(“Too small”),相等表示猜到了。如果猜到,則結束程式。程式還要求統計猜的次數,如果1次猜出該數,提示“Bingo!”;如果3次以內猜到該數,則提示“Lucky You!”;如果超過3次但是在N(>3)次以內(包括第N次)猜到該數,則提示“Good Guess!”;如果超過N次都沒有猜到,則提示“Game Over”,並結束程式。如果在到達N次之前,使用者輸入了一個負數,也輸出“Game Over”,並結束程式。

輸入格式:
輸入第一行中給出兩個不超過100的正整數,分別是遊戲機產生的隨機數、以及猜測的最大次數N。最後每行給出一個使用者的輸入,直到出現負數為止。

輸出格式:
在一行中輸出每次猜測相應的結果,直到輸出猜對的結果或“Game Over”則結束。

在此需注意:超過n次,也就是猜了n次都沒有猜中,此時次數為n,如果只判斷次數,結果有兩種,一種是最後一次猜中了,一種是沒猜中,所以需要再加上一個判斷條件兩個數不相等。
即判斷條件count==con&&n!=m。

#include<iostream>
using namespace std;
/*數字遊戲是令遊戲機隨機產生一個100以內的正整數,
使用者輸入一個數對其進行猜測,需要你編寫程式自動對其與隨機產生的被猜數進
行比較,並提示大了(“Too big”),還是小了(“Too small”),相等表示猜到了。
如果猜到,則結束程式。程式還要求統計猜的次數,如果1次猜出該數,提示“Bingo!”;
如果3次以內猜到該數,則提示“Lucky You!”;如果超過3次但是在N(>3)
次以內(包括第N次)猜到該數,則提示“Good Guess!”;如果超過N次都沒有猜到,
則提示“Game Over”,並結束程式。
如果在到達N次之前,使用者輸入了一個負數,也輸出“Game Over”,並結束程式。
*/
int main(){ int m,con,n,count=0; cin>>m>>con; for(int i=0;i<con;i++){ cin>>n; count++;//猜的次數 if(n<0){ cout<<"Game Over"<<endl; return 0; } if(n>m) cout<<"Too big"<<endl; else if(n<m) cout<<"Too small"
<<endl; else if(n==m){ if(count==1) cout<<"Bingo!"<<endl; else if(count<=3) cout<<"Lucky You!"<<endl; else if(count>3&&count<=con) cout<<"Good Guess!"<<endl; return 0; } if(count==con&&n!=m) cout<<"Game Over"; } return 0; }