Try   HackMD

2023 交大電機營 C++ 統整練習


統整練習 寶可夢大對決


挖空程式碼:

#include<iostream> using namespace std; int main() { int pikachu_HP = 100, enemy_HP = 100, move, pikachu_SP = 0; //遊戲初始設定 while(/* (1) */) { //無法確定遊戲結束時間,使用無限迴圈 cout << "HP of pikachu: " << pikachu_HP << endl; //顯示皮卡丘的HP cout << "HP of enemy: " << enemy_HP << endl; //顯示敵人的HP cout << "Your SP is " << pikachu_SP << endl; //顯示皮卡丘的SP cout << "Please choose your move: " << endl; //顯示使用者可以選擇的動作列表 cout << "1.Quick Attack 2.Thunder Shock 3.Thunderbolt 4.Escape" << endl; cin >> move; //讓使用者輸入要執行的動作 //依照使用者輸入情形,執行不同動作 if(/* (2) */) { //如果使用者執行動作 1 enemy_HP -= 5; //敵人HP減少 5 pikachu_SP++; //皮卡丘SP增加 1 } else if(/* (3) */) { //如果使用者執行動作 2 enemy_HP -= 8; //敵人HP減少 8 pikachu_SP++; //皮卡丘SP增加 1 } else if(/* (4) */) { //如果使用者執行動作 3 //判斷皮卡丘的SP夠不夠釋放大招 if(pikachu_SP >= 4) { //皮卡丘SP大於等於 4,足夠 /* (5) */ //皮卡丘SP減少 4 /* (6) */ //敵人HP減少 30 } else { //皮卡丘SP小於 4,不夠 cout << "SP is not enough!" << endl; //顯示SP不足警告 continue; //跳過此次迴圈,重新詢問使用者要執行甚麼動作 } } else if(/* (7) */) { //如果使用者執行動作 4 cout << "Your pikachu escapes from the battle!" << endl; //顯示皮卡丘逃離戰場提示 /* (8) */ //遊戲結束,跳離迴圈結束程式 } else { //如果使用者輸入錯誤 cout << "Wrong move!" << endl; //顯示動作錯誤警告 /* (9) */ //跳過此次迴圈,重新詢問使用者要執行甚麼動作 } //判斷自己、敵人的HP狀態 if(/* (10) */) { //如果敵人HP小於等於 0 cout << "You win!!!!!!" << endl; //顯示遊戲勝利提示 /* (11) */ //遊戲結束,跳離迴圈結束程式 } pikachu_HP -= 10; //敵方攻擊,皮卡丘HP減少 10 if(/* (12) */) { //如果皮卡丘HP小於等於 0 cout << "You lose!!!!!!" << endl; //顯示遊戲敗北提示 /* (13) */ //遊戲結束,跳離迴圈結束程式 } } return 0; }

程式概念流程圖

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →