RSS   



  可打印版本 | 推薦給朋友 | 訂閱主題 | 收藏主題 | 純文字版  


 


 
主題: [資訊電機] [求助]一個c++的發樸克牌程式   字型大小:||| 
kikakuu
金驢友〔初級〕
等級: 16等級: 16等級: 16等級: 16


今日心情

 . 積分: 1837
 . 文章: 2461
 . 收花: 13271 支
 . 送花: 240 支
 . 比例: 0.02
 . 在線: 5736 小時
 . 瀏覽: 56166 頁
 . 註冊: 7240
 . 失蹤: 7
#1 : 2004-11-14 10:32 AM     只看本作者 引言回覆

題目.~~~
試寫一個樸克牌發牌程式,使用兩個陣列,一個陣列存放亂數,另一個陣列放1~52,利用兩個陣列來洗牌,洗牌後依序發排給東,西,南,北家四家。其中以1~13代表黑桃,14~25代表紅桃,27~39代表紅磚,40~52代表梅花.......

誰來教我丫...好難的說...>.<



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
Acute
論壇第一大毒王
等級: 18等級: 18等級: 18等級: 18等級: 18
論壇第一小神童

 . 積分: 3281
 . 精華: 8
 . 文章: 11574
 . 收花: 14037 支
 . 送花: 3260 支
 . 比例: 0.23
 . 在線: 323 小時
 . 瀏覽: 2250 頁
 . 註冊: 8008
 . 失蹤: 5360
#2 : 2004-11-14 11:14 AM     只看本作者 引言回覆

這沒啥困難的阿
你有啥不懂的部份?
呵呵, 要別人幫你寫, 是不可能的
你針對不懂的地方提問題, 別人才能回答你 ^^"

Acute.



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
shiuh
論壇第一聰明
等級: 17等級: 17等級: 17等級: 17等級: 17
機車達人

今日心情

 . 積分: 2593
 . 精華: 3
 . 文章: 15478
 . 收花: 17324 支
 . 送花: 6953 支
 . 比例: 0.4
 . 在線: 5213 小時
 . 瀏覽: 59013 頁
 . 註冊: 7956
 . 失蹤: 108
 . MP-573T
#3 : 2004-11-14 11:48 AM     只看本作者 引言回覆

要寫作業
先把你寫的弄給大家
才知道你那邊不會
不然
要人幫你寫作業??



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
南無
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14


今日心情

 . 積分: 996
 . 精華: 1
 . 文章: 5126
 . 收花: 6613 支
 . 送花: 5000 支
 . 比例: 0.76
 . 在線: 711 小時
 . 瀏覽: 54263 頁
 . 註冊: 7196
 . 失蹤: 117
#4 : 2004-11-14 12:49 PM     只看本作者 引言回覆

這個程式我以前有看到過,但我想不起來在那裡看到吶,我有空幫你找找看的說


[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
alger
銀驢友〔高級〕
等級: 14等級: 14等級: 14等級: 14
終於可自訂暱稱了 TT

 . 積分: 838
 . 文章: 714
 . 收花: 6593 支
 . 送花: 5495 支
 . 比例: 0.83
 . 在線: 4150 小時
 . 瀏覽: 124067 頁
 . 註冊: 7239
 . 失蹤: 0
 . 台灣
#5 : 2004-11-14 01:47 PM     只看本作者 引言回覆

提供你另一個想法

設1個二維陣列 Array[4][13]
當作紀錄已發牌的註記

再設2個變數 a,b ;  1<= a <= 4 ; 1<= b <= 13;
4個一維陣列 紀錄4位玩家發到牌組

以上大致有整支程式的流程了

其餘部分麻煩自己 Coding 吧



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
kikakuu
金驢友〔初級〕
等級: 16等級: 16等級: 16等級: 16


今日心情

 . 積分: 1837
 . 文章: 2461
 . 收花: 13271 支
 . 送花: 240 支
 . 比例: 0.02
 . 在線: 5736 小時
 . 瀏覽: 56166 頁
 . 註冊: 7240
 . 失蹤: 7
#6 : 2004-11-14 02:15 PM     只看本作者 引言回覆


引用:
alger寫到:
提供你另一個想法

設1個二維陣列 Array[4][13]
當作紀錄已發牌的註記

再設2個變數 a,b ;  1<= a <= 4 ; 1<= b <= 13;
4個一維陣列 紀錄4位玩家發到牌組

以上大致有整支程式的流程了

其餘部分麻煩自己 Coding 吧


說真的我看不懂..@@



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
kikakuu
金驢友〔初級〕
等級: 16等級: 16等級: 16等級: 16


今日心情

 . 積分: 1837
 . 文章: 2461
 . 收花: 13271 支
 . 送花: 240 支
 . 比例: 0.02
 . 在線: 5736 小時
 . 瀏覽: 56166 頁
 . 註冊: 7240
 . 失蹤: 7
#7 : 2004-11-14 02:16 PM     只看本作者 引言回覆


引用:
Acute寫到:
這沒啥困難的阿
你有啥不懂的部份?
呵呵, 要別人幫你寫, 是不可能的
你針對不懂的地方提問題, 別人才能回答你 ^^"

Acute.


這沒啥困難的阿-->>程度有差吧..我怎麼都聽不懂老師的講解..@@



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
kikakuu
金驢友〔初級〕
等級: 16等級: 16等級: 16等級: 16


今日心情

 . 積分: 1837
 . 文章: 2461
 . 收花: 13271 支
 . 送花: 240 支
 . 比例: 0.02
 . 在線: 5736 小時
 . 瀏覽: 56166 頁
 . 註冊: 7240
 . 失蹤: 7
#8 : 2004-11-14 02:24 PM     只看本作者 引言回覆

#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<math.h>

int pork[53];  
void wash_pork(int);

int main()
{
  int a,b,rnd;
  srand((unsigned)time(NULL));
  
  for(a=1;a<=52;a++)
  {
      pork[a] = a;   
  }

  for(a=1;a<=100;a++)
  {
      rnd=rand()%52+1;
      wash_pork(rnd);
  }   


  for(a=1;a<=52;a++)
  {   
      printf("%3d",pork[a]);
      if( a%13 == 0)
      {
         printf("\n");
      }
  }
getch();
}

void wash_pork(int position)
{
  int temp;
      temp=pork[1];
      pork[1]=pork[position];
      pork[position]=temp;
}


這是我能寫出來的部份了...@@
有些是照課本打的.....



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
leon1206
鐵驢友〔高級〕
等級: 6等級: 6
色即是空

今日心情

 . 積分: 74
 . 文章: 587
 . 收花: 197 支
 . 送花: 103 支
 . 比例: 0.52
 . 在線: 3197 小時
 . 瀏覽: 19855 頁
 . 註冊: 7174
 . 失蹤: 1972
#9 : 2004-11-14 06:39 PM     只看本作者 引言回覆


引用:
kikakuu寫到:
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<math.h>

int pork[53];  
void wash_pork(int);

int main()
{
  int a,b,rnd;
  srand((unsigned)time(NULL));
  
  for(a=1;a<=52;a++)
  {
      pork[a] = a;   
  }

  for(a=1;a<=100;a++)  //洗幾次(亂數交換位置的牌幾次)
  {
      rnd=rand()%52+1;
      wash_pork(rnd);
  }   


  for(a=1;a<=52;a++)
  {   
      printf("%3d",pork[a]);
      if( a%13 == 0)
      {
         printf("\n");
      }
  }
getch();
}

void wash_pork(int position)
{
  int temp;
      temp=pork[1];
      pork[1]=pork[position];
      pork[position]=temp;
}


這是我能寫出來的部份了...@@
有些是照課本打的.....


你的這個程式只有做洗牌的動作 至於跟你老師出的題目不太相關 不過卻能是能用此程式達到相同的效果

至於你老師出的題目 應該是要在一個array 放 1~52 代表牌 照著順序
另一個array X放 亂數 1~4 代表人











給個小hint: 先做一個array X 讓X[1~13]=1;X[14~26]=2.....以此類推 把X這個array拿去洗牌 之後if (X[j] == y) 則代表 y這個人 拿到 pork[j]這張牌 (j=1~52) 加油吧



真有點不習慣從1開始搞陣列  

[leon1206 在 2004-11-14 06:43 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
Acute
論壇第一大毒王
等級: 18等級: 18等級: 18等級: 18等級: 18
論壇第一小神童

 . 積分: 3281
 . 精華: 8
 . 文章: 11574
 . 收花: 14037 支
 . 送花: 3260 支
 . 比例: 0.23
 . 在線: 323 小時
 . 瀏覽: 2250 頁
 . 註冊: 8008
 . 失蹤: 5360
#10 : 2004-11-14 07:04 PM     只看本作者 引言回覆

其實你幾乎寫對了阿, 跟你們老師要求的, 只差一點點而已
以下是你的程式, 我幫你加上需要修改的說明

int pork[53];  
void wash_pork(int);

int main()
{
  int a,b,rnd;
  srand((unsigned)time(NULL));

   // 另一個陣列放1~52,
  for(a=1;a<=52;a++)
  {
      pork[a] = a;   
  }

   //一個陣列存放亂數,
   // 這段得改, 變成存放亂數到陣列, 而不是用亂數立即洗排
  for(a=1;a<=100;a++)
  {
      rnd=rand()%52+1;
      wash_pork(rnd);
  }   

   // 利用兩個陣列來洗牌,
   // 這兒再加一段, 用亂數陣列去洗排
   //

   // 洗牌後依序發排給東,西,南,北家四家。
   // 這兒得小改, 不是把0-12 張給東, (以此類推)
   // 而應該是 東得到陣列的 1, 5, 9...
   //          西得到       2, 6, 10 ...
   //          南得到       3, 7, 11 ...
   //          北得到       4, 8, 12 ...
   // 觀念: 利用loop %4 即可
  for(a=1;a<=52;a++)
  {   
      printf("%3d",pork[a]);
      if( a%13 == 0)
      {
         printf("\n");
      }
  }
getch();
}

void wash_pork(int position)
{
  int temp;
      temp=pork[1];
      pork[1]=pork[position];
      pork[position]=temp;
}

[Acute 在 2004-11-14 07:05 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
kikakuu
金驢友〔初級〕
等級: 16等級: 16等級: 16等級: 16


今日心情

 . 積分: 1837
 . 文章: 2461
 . 收花: 13271 支
 . 送花: 240 支
 . 比例: 0.02
 . 在線: 5736 小時
 . 瀏覽: 56166 頁
 . 註冊: 7240
 . 失蹤: 7
#11 : 2004-11-15 06:30 PM     只看本作者 引言回覆

沒想到這邊竟然有高手....
多謝了..@@



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
kikakuu
金驢友〔初級〕
等級: 16等級: 16等級: 16等級: 16


今日心情

 . 積分: 1837
 . 文章: 2461
 . 收花: 13271 支
 . 送花: 240 支
 . 比例: 0.02
 . 在線: 5736 小時
 . 瀏覽: 56166 頁
 . 註冊: 7240
 . 失蹤: 7
#12 : 2004-11-15 06:42 PM     只看本作者 引言回覆


引用:
leon1206寫到:
給個小hint: 先做一個array X 讓X[1~13]=1;X[14~26]=2.....以此類推 把X這個array拿去洗牌 之後if (X[j] == y) 則代表 y這個人 拿到 pork[j]這張牌 (j=1~52) 加油吧



真有點不習慣從1開始搞陣列  

[leon1206 在 2004-11-14 06:43 PM 作了最後編輯]




這沒辦法...
老師說會搞混的人,就從1開始...@@



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記
vacakadi
青銅驢友
等級: 11等級: 11等級: 11等級: 11
被驢騎的騎士。

十週年紀念徽章(六級)  

 . 積分: 265
 . 文章: 429
 . 收花: 1837 支
 . 送花: 1349 支
 . 比例: 0.73
 . 在線: 1090 小時
 . 瀏覽: 44704 頁
 . 註冊: 7230
 . 失蹤: 18
 . taiwan
#13 : 2004-11-17 06:50 PM     只看本作者 引言回覆

http://yifu.oners.idv.tw/
這邊是及時討論區,
如果急用可上去討論。



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  新增/修改 爬文標記

   



 



所在時區為 GMT+8, 現在時間是 2024-4-28 01:47 AM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.028933 second(s), 6 queries , Qzip disabled