作者yantchen (球童Yanting)
看板NTUE-CS101
標題[課業] 骰子和撲克牌
時間Sun Jun 7 00:56:13 2009
還在為期末考奮鬥的孩子們
之前跟你們說他去年考了什麼 大家練習的還順利嗎?
我給大家一些提示吧~
再來回憶一下老師要考的重點
1. 遊戲
父類別: 儲存
姓名跟
分數
2. 遊戲子類別
繼承父類別
3. "
選擇遊戲"的畫面
4. 兩個
遊戲的內容
5.
存檔
遊戲父類別
這是基本題
這一題的重點是
物件封裝 沒有封裝就沒有分數了
class game
{
protected:
char name[100]; // 姓名和分數 要符合資料封裝
int point; // 必須是
私有的 但又要給下面繼承 所以用
protected
public:
void inputname()
{
cout<<"請輸入你的名子:";
cin>>name; // 有些人會寫成 name[100]
// 那代表把名字寫到第100格 這是不對的喔
}
char* getname() // 把它丟給 cout 就會顯示名子
{
return name;
}
void setpoint(int p) // 設定分數
{
point = p;
}
void addpoint(int p) // 增加分數 應題目要求
{ // 像是題目說贏了可以+10分就呼叫 addpoint(10);
point += p;
}
int getpoint()
{
return point;
}
};
第一關PASS
繼承
第二關也很簡單
繼承有三種 : public , private, protected
不知道怎麼用的時候 用public就對了(除非題目指定)
class game1 : public game { };
class game2 : public game { };
這樣就寫完了XD ( 這是個bug 題目說若有需求再增加成員 所以這樣寫就有第二題分數
遊戲內容等下後面再說 )
選關畫面
建議是類別 但也可以不是類別
如果不是類別應該你們就會了吧~
int main()
{
cout<<"哈囉王老大, 您今天想玩什麼XD?"<<endl;
cout<<"[1] 擲骰子比大 [2] 抽撲克牌比大 [其他] 離開";
int choose;
cin>>choose;
game1 g1;
game2 g2; // google說 switch裡面不可以宣告變數@@
switch(choose)
{
case 1:
g1.play();
break;
case 2:
g2.play();
break;
default:
cout<<"老師掰~";
break;
}
}
耶有一半的分數囉
下集待續..
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.42.74.9
※ 編輯: yantchen 來自: 114.42.74.9 (06/07 01:27)
1F:推 StranGhost:謝謝學長的猜題 XD 06/07 19:08
※ 編輯: yantchen 來自: 203.68.15.209 (06/07 21:51)