返回列表 發帖

賽馬程式 (三)

本帖最後由 葉桔良 於 2022-8-27 16:05 編輯

1. 在比賽首頁顯示第幾局
2. 在比賽結束頁顯示哪一位選手勝出



  1. #include<iostream>
  2. #include<cstdlib>
  3. #include<ctime>
  4. using namespace std;
  5. int main()
  6. {
  7.         int game = 1;
  8.         re:
  9.        
  10.         //起始畫面
  11.     system("cls");   
  12.         //s為每隻賽馬的空格   
  13.     int s[]={0,0,0,0};
  14.     string p[]={"◆","★","▲","●"};
  15.     srand(time(NULL));
  16.     cout<<"「好事成雙」賽馬場 第 "<<game<<" 局 "<<endl;
  17.     cout<<"-------------------------------------------------------------------------| 終點"<<endl;
  18.     for(int i=0;i<4;i++)
  19.         cout<<p[i]<<endl;
  20.     system("pause");
  21.    
  22.     //比賽過程畫面
  23.     int r;
  24.     while(true)
  25.     {
  26.         system("cls");
  27.         r=rand()%4;   //0~3
  28.         s[r]++;   
  29.         cout<<"比賽進行中"<<endl;
  30.         cout<<"-------------------------------------------------------------------------| 終點"<<endl;
  31.         
  32.         for(int i=0;i<4;i++) //0 -> ◆
  33.         {
  34.             for(int j=0; j<=s[i]; j++) //68
  35.                 cout<<" ";
  36.             cout<<p[i]<<endl;
  37.                 }                 
  38.      
  39.         if(s[r]==73)
  40.             break;                    
  41.     }
  42.    
  43.     system("cls");
  44.     cout<<"比賽結束 由 "<<p[r]<<" 先馳得點"<<endl;
  45.     cout<<"-------------------------------------------------------------------------| 終點"<<endl;
  46.     for(int i=0;i<4;i++) //0 -> ◆
  47.     {
  48.         for(int j=0; j<=s[i]; j++) //68
  49.             cout<<" ";
  50.         cout<<p[i]<<endl;
  51.         }
  52.    
  53.     system("pause");
  54.     game++;
  55.     goto re;
  56.     return 0;
  57. }
複製代碼
皓云的作業程式碼 給各位同學參考
  1. #include<iostream>
  2. #include<cstdlib>
  3. #include<ctime>
  4. using namespace std;
  5. int main()
  6. {
  7.         int game = 1;//宣告變數"game"
  8.         re:
  9.     system("cls");//清除畫面   
  10.     int s[]={0,0,0,0};//宣告陣列"s"
  11.     string p[]={"◆","★","▲","●"};//宣告陣列"p"
  12.     srand(time(NULL));//設定種子"time(NULL)"
  13.     cout<<"賽馬場 第 "<<game<<" 局 "<<endl;//輸出賽馬場名稱及局數
  14.     cout<<"-------------------------------------------------------------------------| 終點"<<endl;//輸出跑道及終點線
  15.     for(int i=0;i<4;i++)//輸出馬匹
  16.         cout<<p[i]<<endl;
  17.     system("pause");
  18.     int r;//宣告變數"r"
  19.     while(true)//while迴圈
  20.     {
  21.         system("cls");//清除畫面
  22.         r=rand()%4;//將亂數除以四,取餘數,將變數"r"設為0~3其中一個  
  23.         s[r]++;//使陣列"s"其中的元素隨機加一   
  24.         cout<<"比賽進行中"<<endl;//輸出"比賽進行中"訊息
  25.         cout<<"-------------------------------------------------------------------------| 終點"<<endl;//輸出跑道及終點線
  26.         
  27.         for(int i=0;i<4;i++)//重複直到變數"i"=3
  28.         {
  29.             for(int j=0; j<=s[i]; j++)
  30.                 cout<<" ";//輸出空格
  31.             cout<<p[i]<<endl;//輸出馬匹
  32.                 }                 
  33.      
  34.         if(s[r]==73)//判斷是否有馬匹跑到終點線
  35.             break;//跳出迴圈                    
  36.     }
  37.    
  38.     system("cls");//清除畫面
  39.     cout<<"比賽結束 由 "<<p[r]<<" 先馳得點"<<endl;//輸出比賽結束訊息,及誰獲勝
  40.     cout<<"-------------------------------------------------------------------------| 終點"<<endl;//輸出跑道及終點線
  41.     for(int i=0;i<4;i++)
  42.     {
  43.         for(int j=0; j<=s[i]; j++)
  44.             cout<<" ";
  45.         cout<<p[i]<<endl;//將畫面設為結束
  46.         }
  47.    
  48.     system("pause");
  49.     game++;//局數增加
  50.     goto re;//回到一開始
  51.     return 0;
  52. }
複製代碼

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表