【問題】我不會寫撲克程式,求C高手幫忙


Recommended Posts

請撰寫一程式用來模擬撲克牌遊戲。

一副正常的撲克牌共有四種花色:♠Spade、♥Heart、♦Diamond、♣Club,

以簡單隨機方式發給兩家各五張牌,

並讓雙方的牌依照黑桃♠、紅心♥、方塊♦、梅花♣之順序排列,

請注意切勿有同樣一張牌重複出現的情況!

可以用類似S3 S5 HA D9 CK來代表『黑桃3、黑桃5、紅心A、方塊9、梅花K』即可;

請注意,這是一副公正的撲克牌,每張牌出現在各個位置的機會均等,

不應出現相同花色或相同點數之牌集中在某一家的狀況。

請於發牌完畢後,加入判斷是否有『對』(Pair),即有二張為同一點數、另三張牌為不同點數之功能。

並將其中一家改為對照組,專門發出所指定的牌型。

例如:

如果你是分配到鐵支,

你的程式應該會有類似的結果:

Player A: S3 S5 HK D9 CK <=亂數發牌

Player B: SA HA DA CA C3 <=指定發出對(也是亂數發牌,不能每次都一樣的對子)

Player B got a pair!

當然,

也很有可能亂數發牌的也拿到了對子,

那麼你的程式應該要顯示兩家拿到對子:

Player A: SK SJ HK DK CK <=亂數發牌(剛好亂數發到對子)

Player B: SA HA DA CA C3 <=指定發出對子(也是亂數發牌,不能每次都一樣的對子)

Player A got a pair!

Player B got a pair!

這是我們老師發出的作業,

真是完全無法(話說上次的河內塔拼了三天才弄出來),

雖說已大一了,

不過程式真的是罩門,

請C高手前來幫忙,感恩~

鏈接文章
分享到其他網站

給你想法,不過我的想法未必是最好的

令梅花0~12

方塊13~25

愛心26~38

黑桃39~51

宣告一個可存10個整數的陣列

0~4是玩家A,5~9是玩家B的牌

那陣列用來放隨機數0~51

不能有重複

至於要如何判斷那數字對應到哪張牌

假設第一個數得到X

若X/13是零的話,表梅花,一的話表方塊,以此類推

至於他代表的點數則X%13+1

至於如何判斷"對",應該不難了

如何實作我的想法,應該不會太難

有錯的話敬請指教

鏈接文章
分享到其他網站

請登入後來留意見

在登入之後,您才能留意見



立即登入