本帖最後由 tonyh 於 2020-2-14 14:26 編輯
1. 比對比賽結果與玩家下注, 判斷玩家贏了錢還是輸了錢.
2. 對變數balance做加減, 使可用餘額會隨著玩家輸贏而增減.
規則如下:
若最後勝出的選手與玩家下注相同, 玩家贏得下注金3倍的錢.
反之, 玩家損失下注金.
- #include<iostream>
- #include<cstdlib>
- using namespace std;
- int main()
- {
- int n=1, winner, balance=0, option, buyin, bet, player;
- srand(time(NULL));
- re:
- system("cls");
- int s[]={0,0,0,0};
- cout<<"「好事成雙」賽馬場 第 "<<n<<" 局"<<endl;
- cout<<"- - - - - - - - - - - 終點"<<endl;
- cout<<"1"<<endl;
- cout<<"2"<<endl;
- cout<<"3"<<endl;
- cout<<"4"<<endl;
- cout<<endl<<"可用餘額: "<<balance<<" 元"<<endl<<endl;
- cout<<"(1)買入 (2)下注 (3)離開 請選擇: ";
- cin>>option;
- if(option==1)
- {
- cout<<"買入: ";
- cin>>buyin;
- if(buyin<=0)
- {
- cout<<"輸入錯誤!";
- _sleep(1500);
- goto re;
- }
- balance+=buyin;
- goto re;
- }
- else if(option==2)
- {
- cout<<"下注: ";
- cin>>bet;
- if(bet<=0)
- {
- cout<<"輸入錯誤!";
- _sleep(1500);
- goto re;
- }
- if(bet>balance)
- {
- cout<<"可用餘額不足,請先買入!";
- _sleep(1500);
- goto re;
- }
- cout<<endl<<"1號 2號 3號 4號 請選擇: ";
- cin>>player;
- cout<<"比賽即將開始..."<<endl<<endl;
- }
- else if(option==3)
- {
- goto end;
- }
- else
- {
- cout<<"輸入錯誤!";
- _sleep(1500);
- goto re;
- }
- system("pause");
- while(true)
- {
- system("cls");
- int r=rand()%4; //0~3
- s[r]++;
- cout<<"比賽進行中"<<endl;
- cout<<"- - - - - - - - - - - 終點"<<endl;
- for(int i=0; i<=s[0]; i++)
- cout<<" ";
- cout<<"1"<<endl;
- for(int i=0; i<=s[1]; i++)
- cout<<" ";
- cout<<"2"<<endl;
- for(int i=0; i<=s[2]; i++)
- cout<<" ";
- cout<<"3"<<endl;
- for(int i=0; i<=s[3]; i++)
- cout<<" ";
- cout<<"4"<<endl;
- if(s[r]==44)
- {
- winner=r+1;
- break;
- }
- _sleep(60);
- }
- system("cls");
- cout<<"比賽結束! 由 "<<winner<<" 號選手先馳得點!"<<endl;
- cout<<"- - - - - - - - - - - 終點"<<endl;
- for(int i=0; i<=s[0]; i++)
- cout<<" ";
- cout<<"1"<<endl;
- for(int i=0; i<=s[1]; i++)
- cout<<" ";
- cout<<"2"<<endl;
- for(int i=0; i<=s[2]; i++)
- cout<<" ";
- cout<<"3"<<endl;
- for(int i=0; i<=s[3]; i++)
- cout<<" ";
- cout<<"4"<<endl;
- n++;
- if(winner==player)
- {
- cout<<"贏了 "<<bet*3<<" 元!"<<endl;
- balance+=bet*3;
- }else
- {
- cout<<"損失 "<<bet<<" 元!"<<endl;
- balance-=bet;
- }
- system("pause");
- goto re;
- end:
- cout<<endl<<"慢走!"<<endl;
- _sleep(1500);
- return 0;
- }
複製代碼 |