返回列表 發帖
  1. #include<iostream>
  2. #include<cstdlib>
  3. using namespace std;
  4. int main()
  5. {
  6.     int a,b,c,d,f,g,h,i,j,k;
  7.     srand(time(NULL));
  8.     start:        
  9.     int n=0,e=0,ce=0,cn=0;
  10.     cout<<"**決戰21點v1.0**"<<endl;
  11.     system("pause");
  12.     system("cls");
  13.     re:
  14.   
  15.     a=rand()%4+3;
  16.     b=rand()%13+1;
  17.     c=rand()%4+3;
  18.     d=rand()%13+1;
  19.     cout<<"你抽到到的是 "<<char(a);
  20.     n++;
  21.     if(b==1)
  22.     cout<<"A ";
  23.     else  if(b==11)
  24.     cout<<"J ";
  25.     else  if(b==12)
  26.     cout<<"Q ";
  27.     else  if(b==13)
  28.     cout<<"K ";
  29.     else
  30.     cout<<b<<" ";
  31.     cout<<char(c);
  32.     n++;
  33.     if(d==1)
  34.     cout<<"A ";
  35.     else  if(d==11)
  36.     cout<<"J ";
  37.     else  if(d==12)
  38.     cout<<"Q ";
  39.     else  if(d==13)
  40.     cout<<"K ";
  41.     else
  42.     cout<<d<<endl;
  43.     if(b==10 || b==11 || b==12 || b==13 || b==1 )
  44.     {
  45.         e=e+10;        
  46.     }else
  47.     {
  48.         e=e+b;     
  49.     }
  50.     if(d==10 || d==11 || d==12 || d==13 || d==1)
  51.     {
  52.         e=e+10;        
  53.     }else
  54.     {
  55.         e=e+d;     
  56.     }
  57.     if(e>21)
  58.     {
  59.         cout<<"你目前的點數是:"<<e<<endl;
  60.         loose:
  61.         cout<<"你輸了!!"<<endl;
  62.         system("pause");
  63.         system("cls");
  64.         goto start;      
  65.     }else
  66.     if(n>=6 && e<=21)
  67.     {   
  68.          cout<<"你目前的點數是:"<<e<<endl;
  69.          win:
  70.          cout<<"你贏了"<<endl;
  71.          system("pause");
  72.          system("cls");  
  73.          goto start;
  74.     }
  75.     if(e==21 && n<6)
  76.     {
  77.     cout<<"Black Jack!!"<<endl;         
  78.     }
  79.     cout<<"你目前的點數是: "<<e<<endl;
  80.     hi:
  81.     cout<<"還要再抽牌嗎?  (1)yes(2)no"<<endl;
  82.     cin>>f;
  83.     if(f==1)
  84.         goto re;
  85.     else if(f==2)
  86.     goto com;
  87.     else
  88.     {
  89.          goto hi;
  90.     }   
  91.     com:
  92.     g=rand()%4+3;
  93.     h=rand()%13+1;
  94.     i=rand()%4+3;
  95.     j=rand()%13+1;
  96.     cout<<"電腦抽到到的是 "<<char(g);
  97.     cn++;
  98.     if(h==1)
  99.     cout<<"A ";
  100.     else  if(h==11)
  101.     cout<<"J ";
  102.     else  if(h==12)
  103.     cout<<"Q ";
  104.     else  if(h==13)
  105.     cout<<"K ";
  106.     else
  107.     cout<<h<<" ";
  108.     cout<<char(i);
  109.     ce++;
  110.     if(j==1)
  111.     cout<<"A ";
  112.     else  if(j==11)
  113.     cout<<"J ";
  114.     else  if(j==12)
  115.     cout<<"Q ";
  116.     else  if(j==13)
  117.     cout<<"K ";
  118.     else
  119.     cout<<j<<endl;
  120.     if(h==10 || h==11 || h==12 || h==13 || h==1 )
  121.     {
  122.         ce=ce+10;        
  123.     }else
  124.     {
  125.         ce=ce+b;     
  126.     }
  127.     if(j==10 || j==11 || j==12 || j==13 || j==1)
  128.     {
  129.         ce=ce+10;        
  130.     }else
  131.     {
  132.         ce=ce+j;     
  133.     }
  134.     if(cn>=6 && ce<=21)
  135.     {
  136.          cout<<"電腦目前的點數是:"<<ce<<endl;
  137.          cout<<"電腦贏了"<<endl;  
  138.          goto loose;
  139.     }
  140.     if(ce>21)
  141.     {
  142.          cout<<"電腦目前的點數是:"<<ce<<endl;
  143.          cout<<"點腦爆了!!"<<endl;
  144.          goto win;      
  145.     }
  146.     if(ce==21 && n<6)
  147.     {
  148.     cout<<"Black Jack!!"<<endl;         
  149.     }
  150.     cout<<"電腦目前的點數是:"<<ce<<endl;
  151.     if(ce>16 && ce>0)
  152.     {
  153.         cout<<"電腦決定再抽一次!!"<<endl;     
  154.         goto com;      
  155.     }else if(ce>=16 || ce>=17 || ce>=18)
  156.     {
  157.         cout<<"電腦決定不要再抽牌了"<<endl;
  158.         goto end;         
  159.     }
  160.     end:
  161.     cout<<"玩家"<<e<<"點,電腦"<<ce<<"點"<<endl;
  162.     if(ce>e)
  163.     {
  164.         goto loose;        
  165.     }else if(e>ce)
  166.     {
  167.         goto win;      
  168.     }else if(e==ce)
  169.     {
  170.         cout<<"平手"<<endl;
  171.         goto start;      
  172.     }
  173.     system("pause");   
  174.     return 0;
  175. }
複製代碼

TOP

返回列表