|
2005/2/21 下午 10:56:40
card game 大老二(程式碼) http://home.pchome.com.tw/magi/sidewalkbebe/big2.zip
終於寫完了 這是小弟自己寫的大老二遊戲 上面的聯結是程式碼
希望各位前輩可以給點意見
因為每個人玩大老二的規則可能不同 所以我說一下我所遵循的規則
1. 同花順任何情況都可以出 2. 四條加一 在上一家不是出同花順的情形 都可以出 3. 其他情形 葫蘆只能壓葫蘆 順只能壓順 4. 最大的順23456 再來是Ace 13 12 11 10 最小是12345
大概就這樣 我還有發明Magic power 只要輸入magic就可以用
再來小弟說明一下,我所使用的演算法
struct card { const int* face; const int* suit; };
struct node { struct card deck; struct node *next; node::node() { next=NULL; }; };
1. 先用linklist把所有的玩家的牌儲存起來 struct node *player[4]; //head of the four player`s card 2. 然後開始play 電腦決定要出哪張牌的方法 我是使用類似象棋的"審局函數" void check_all_value_advance(struct node **); count_player_card_value(node ** head);
3. count_player_card_value是將電腦手中的牌的值算出來 依照點數大小不同會有不同的分數 single_value是將每張牌的face*3 fullhouse_value*4 ex: 5 fullhouse=> 5*4 straight flush *10 ex:56789 => 9*10
所以如果玩家有55544 卡值就是(5*3+5*3+5*3)+(4*3+4*3)+5*4
4. check_all_value_advance 是將所有玩家有可能出的牌 先remove,在計算剩下來的卡值
也就是先remove 再 count_player_card_value
ex:玩家有6一對和4一對 那出完6pair的卡值就是4*3+4*3=24
出完4pair的卡值就是6*3+6*3=36
因為 36>24所以電腦會出4pair
但如果有4fullhouse 那就可能會出6pair
5. 在每次count_player_card_value之前 必須先和上家所出的牌compare bool compare(上家出的牌,自己想出的牌) bool compare有兩種(斯斯也有兩種) 5.1 bool compare_straight(card last_issue[5],card cards_player_want_issue[5]); for straight and straight flush 5.2 bool compare_card(card last_issue[5],card cards_player_want_issue[5],int card_type); for other type
6. 可以出哪些牌存在 bool what_type_ok[6]; //true means that type of card can be issue(play) //but(and only) what_type_ok[0]==true means last_issue is straight flush //0=straight flush,1=single,2=pair,3=fullhouse, //4=four_add_one,5=straight;
7. 當all pass what_type_ok[6]全部設為true 其他相關的在reset_what_type_ok()
8. struct node *player[4]; //head of the four player`s card 當player[?]==NULL 遊戲結束
|
|
|
2005/2/21 下午 10:57:02
希望各位前輩如果有空 可以稍微看一下並給點意見 因為小弟目前已經大四了 希望畢業以後可以用c/c++為生
而且因為我有一科必修被當 所以我大5那年一個禮拜只要去一天學校 希望我在大5就可以找到工作 (即使是打工也希望可以增加經驗) 然後畢業去當兵
請各位前輩指引一條明路 我不了解c要寫到怎樣的程度可以找到工作 也不了解在達到那樣的程度之前 必須作怎樣的練習 請各位前輩如果有空幫我稍作說明 謝謝~~
|
|
|
2005/2/22 上午 08:37:03
你要找什麼樣的工作?
|
|
|
2005/2/22 上午 10:40:39
並不是因為想找有關遊戲的工作才寫大老二 是因為不知道要練習什麼才寫大老二 我目前對工作的狀況都不是很清楚 但我希望能用c/c++為生 而且因為我要延畢 所以更迫切的需要..ㄏㄏ
|
|
|
2005/2/22 下午 03:24:20
嘻,這個我自己想聊一下
個人真正以 C/C++ 開發的經驗其實才一年半而已 與站上許多大大比真是九牛一毛 但感受到其實 C/C++ 只是工具而已 除了工具之外的專長其重要性可能更鉅
大部份會英文的人不是以英文為業 於是英文成了他們的工具 工具的重要性視狀況而定 如果是在路上跑的運將大哥 我想看得懂車牌號碼就夠了 如果是跨國企業的 sales 就連聽與說也要要求了 但運將大哥連車牌都看不懂卻日以繼夜地狂接客 他也能夠日入斗金 跨國企業的 sales 英文連讀都有問題但卻猛攻大陸市場 他也能夠對公司有甚大的貢獻
C/C++ 只是程式,也是工具 但我一定要用 C/C++ 才能寫個 Hello World 嗎? 用 JavaScript 寫個 document.write("Hello World"); 也可以 用 shell script 寫個 echo 'Hello World' 也可以 其實重要的是你要在什麼地方去寫 Hello World C/C++ 太萬能了,幾乎什麼地方都可以用 但如同英文,這只是工具之一 要寫 Web 程式,C/C++ 當然可以使用 但使用 JavaScript 與 PHP 可能比 C/C++ 更合適 一個 Web programmer 不會 C/C++ 也可以是公司的靈魂
屁一堆,實在是因為有感而發 年後自己想換工作,面試了幾家公司 應徵的是 Linux 環境的 C/C++ programmer 主試者大部份不會去考你 C/C++ 會到什麼程度 而是看你有沒有其他相關的經驗或專長 例如有沒有寫過 driver 有沒有玩過 embedded Linux 懂不懂 kernel 沒碰到一家公司是只問你會不會 C/C++ 的
建議除了 C/C++ 之外,另外挑個自己有興趣的領域 例如 Game,embedded system,media player,GUI design 等等 這樣你 C/C++ 的功力也會有得以發揮的空間 當然真的想成為 C/C++ 當代宗師也是可以的 我們先確定自己想要做什麼,喜歡什麼,再來執行 不但有潛在的甚至是即時的價值,自己也覺得充實快樂 否則到職場上可能會因此產業的不同而隨波逐流
|
|
|
2005/2/22 下午 03:30:27
>屁一堆,實在是因為有感而發 >年後自己想換工作,面試了幾家公司 >應徵的是 Linux 環境的 C/C++ programmer >主試者大部份不會去考你 C/C++ 會到什麼程度 >而是看你有沒有其他相關的經驗或專長 >例如有沒有寫過 driver >有沒有玩過 embedded Linux >懂不懂 kernel >沒碰到一家公司是只問你會不會 C/C++ 的
@-@..其實..你找 Linux 工作...C++ 是~ "基本"的.. 所以他才不問你會不會C++
因為如果你不會 ~_~..你因該不能找這工作吧
|
|
|
2005/2/22 下午 03:49:07
>@-@..其實..你找 Linux 工作...C++ 是~ '基本'的.. >所以他才不問你會不會C++ > >因為如果你不會 ~_~..你因該不能找這工作吧
Linux 跟 C++ 應該沒什麼關係 Linux System Enginner 不需要 C++ Linux Web Programmer 不需要 C++ Linux MySQL DBA 不需要 C++ 跟 C++ 比起來,個人認為 C 還更 '基本' 些 ^_^
|
|
|
2005/2/24 下午 05:37:48
>跟 C++ 比起來,個人認為 C 還更 ''基本'' 些 ^_^
基本上C++包含C的功能,既然會C++也就會C了不是麼? 有人有可能只會C++增加的功能而不會C的用法麼? 如果會C不會C++還比較有可能不是麼?為何會認為C跟C++不一樣?
|
|
|
2005/2/24 下午 09:05:29
C and C++ 本來就是 twins..
|
|
|
2005/2/24 下午 10:04:22
>基本上C++包含C的功能,既然會C++也就會C了不是麼? >有人有可能只會C++增加的功能而不會C的用法麼? >如果會C不會C++還比較有可能不是麼?為何會認為C跟C++不一樣?
我之認為 C 比較基本是圍繞著 Linux 為主 並不是去討論 C/C++ 哪個較基本的超主觀議題
Linux 大部份都是由 C 建構而成 waitpid(), execvp(), fork(), dup2() 等等基本到不行的 interface 都是 C API 於是在 Linux 上開發程式,C 成為一項相當重要的工具 在這個環境下,C 比 C++ 來得更重要 這是我的出發點 請不要為我歸納出 "為何會認為C跟C++不一樣?" 這種結論 ^^:
|
|
|
2005/2/25 上午 01:33:12
請問像小弟這樣沒有經驗的程式設計者(還不到"師"等級) C/C++中基本的演算法function array poter class都會了 那應該做些怎樣的練習才找得到工作呢 像其實板上很多問題我點進去看都看不懂 諸如STL, interface ,C API
之前有人建議我有找一下來專精 例如遊戲或多媒體.但是我根本不知我的興趣再哪 請問要找這方面的書有哪些ㄚ 因為我想先找書來看看才知道自己興趣再哪
|
|
|
2005/2/26 下午 02:06:49
>請不要為我歸納出 '為何會認為C跟C++不一樣?' 這種結論 ^^:
SORRY對你做出這種結論 = ="
|
|
|
2005/3/7 上午 02:49:00
收了這個檔案,是應該說聲謝謝.... 但似乎沒人說.. 還是只說一聲會被站長或版主警告之類的? 我收了.. 謝謝.. 目前在收集一些遊戲的寫法及資料... 有興趣寫棋牌類的朋友,可以跟我聯絡...我們可以交流交流.. 嘿嘿..
|
|
|
2005/3/7 上午 09:25:43
真的嗎..我對這種東西也很有興趣
如果可以的話.寄一點資料到我的信箱好嗎
sidewalkbebe@pchome.com.tw
謝謝
|
|
|
2005/5/15 下午 10:12:15
如果可以的話.寄一點資料到我的信箱好嗎
30170602@yahoo.com.tw
謝謝
|
|
|
2005/5/16 下午 05:59:25
可不可以寄給我一份阿 3Q genioushebe@yahoo.com.tw
|
|
|
2005/5/16 下午 07:02:38
請不要再留信箱。提供資料者請使用網站下載的方式,謝謝。
|
|
|
2005/5/16 下午 07:20:26
程式碼遺失了
XD
|
|
|
2005/5/27 上午 02:47:21
還滿有興趣的說 沒有程式碼了喔? 真是可惜啊~
|
|
|
2007/3/24 下午 07:55:51
card game 大老二(程式碼) http://home.pchome.com.tw/magi/sidewalkbebe/big2.zip
沒得下載了
|
|
|
2007/3/26 下午 11:05:54
有沒有大大可以重post? 謝大大
|
|
|
2009/2/20 下午 04:28:29
你好 可以寄一帖大老二(程式碼)給我嗎 bonnie197968@yahoo.com.tw
|
|
|
2010/4/22 下午 10:15:06
可以麻煩你計一份程式碼給我嗎? thx~ herbie771010@yahoo.com.tw
|
|
|
2010/4/22 下午 10:16:54
可以麻煩你寄一份大老二程式碼給我嗎 拜託了~ herbie771010@yahoo.com.tw
|
|
|
2010/4/22 下午 10:17:12
可以麻煩你寄一份大老二程式碼給我嗎 拜託了~ herbie771010@yahoo.com.tw
|
|
|
2014/2/16 下午 11:46:06
可以寄程式碼給我嘛 s060405s@gmail.com 謝謝版主
|
|
|
2015/6/23 下午 06:26:46
請問可以提共 程式碼做參考嗎? 信箱是733house@gmail.com.tw
|
|
|
|
|
|
C++ |
 |
|
|
專家等級 |
評價 |
|
|
一代宗師 |
10000 |
|
|
曠世奇才 |
5000 |
|
|
頂尖高手 |
3000 |
|
|
卓越專家 |
1500 |
|
|
優秀好手 |
750 |
|
|
|
|
|
|
|
|
|
Microsoft Internet Explorer
6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/ |
|
|