Sun*Daph's Blog

pageicon 星期三 七月 15, 2009

[軟體發表] Gu Pick Up Red - 單機/連線撿紅點遊戲

名     稱:Gu Pick Up Red
版     本:1.0.0
平     台:Windows系列 (含Vista)
介     面:繁體中文
開發語言:C++
載     點:Gu_Pick_Up_Red.zip (14.9MB)



◎畫面擷圖:








=================================================
◎簡介:
      Gu Pick Up Red為一款撿紅點紙牌遊戲,人物圖像以及配樂是以霹靂布袋戲
為主軸,可單機遊玩也可多人連線對戰。

※註:其圖像及配樂版權屬EPILI Networks(霹靂多媒體國際)所有。


◎ 規則與出牌
---------------------------------------------------------------------
『撿紅點吃牌規則』

      吃牌方式只看點數,點數1~9之間的牌,合起來為10即可取走,大於等於10
的牌(10、J、Q、K),點數一樣的才可取走。例如 : 梅花3配紅心7、黑桃K配方
塊K可取走;方塊5配黑桃6、梅花J配紅心Q不可取走。


『撿紅點計分規則』

      吃到的牌裡面,只有紅色(方塊與紅心)的計分,黑色(梅花與黑桃)的不計分;
但點數為A的牌例外,每張計分如下:方塊A與紅心A各為20分、黑桃A算30分、
梅花A算40分;其餘的紅色牌就依牌面點數計算,但大於等於10點以上都只算
10分而已,例如 : 紅心4為4分、方塊9為9分、紅心10為10分、方塊J為10分、
紅心K為10分。(※註:各家點數總和為278分)


『戰績規則』

      分為:1.單場優勝、2.武林盟主,每回合結束後會比較各家點數,點數
最多者為贏家。單場優勝是指單回合的勝利者,武林盟主是指各回合的總積分
為最高。除非玩家中斷遊戲,否則回合數將會一直繼續下去。『評價加分』
機制將會影響到武林盟主的積分,但不影響單場積分,計有下列評價:

(1) 宅心仁厚 (+5)  : 單場分數尾數為1,例如 : 101分、51分。
(2) 韜光養晦 (+10) : 單場分數為10的倍數,例如 : 70分、90分。
(3) 焉知非福 (+15) : 吃到的牌裡面沒有任何一張A。
(4) 十全十美 (+20) : 有兩張紅色的10(吃到紅心10與方塊10)。
(5) 大將之風 (+30) : 取得任一點數的所有花色,例如 : 拿到4張7。
(6) 王者天下 (+50) : 分數超過平均分數1.5(2人)、1.6(3人)、1.7(4人)倍
                                              <209分> 、<149分> 、<119分>


『出牌操作』

      先點選欲出的牌,此時牌會呈現選取狀態,再點選桌面欲吃的牌
即可吃牌;如桌面無牌可吃,於牌成挑選狀態時,再點擊一次即可
出牌到桌上。而當桌面上有牌可以匹配,但您作丟牌到桌上的操作時
(點擊選擇的牌),程式會限制出牌。

      翻牌後,一樣點選桌面上欲吃的牌即可出牌,如桌面無牌可吃,
點擊一下翻出來的牌,即可出牌到桌上。而當桌面上有牌可以匹配
翻出來的牌,但您作丟牌到桌上的操作時(點擊翻出來的牌),程式
會限制出牌。



◎ 角色選擇面板 (功能表 -> 開新局 -> 角色選擇面板)
---------------------------------------------------------------------
      玩家可任意選擇要扮演的角色,只要點選圖像即可。而勾選自訂
角色名稱,則會將玩家選擇的圖像,於牌局中改為自訂名稱。

1.伺服器IP位址 : 僅對『連線對戰』有效果,用來指定伺服器位址。
2.自訂角色名稱 : 最多可輸入6個中文字。



◎ 單機對戰 (功能表 -> 開新局 -> 單機對戰)
---------------------------------------------------------------------
      可選擇2~4人的牌局,玩家會位於南方位置,其餘由電腦隨機挑
選角色來當您的對手。(已代表玩家的角色,電腦不會重複挑選)

      單機對戰模式可隨時再開新局,如想換角色,可由角色選擇面板
挑選,重開牌局後會立即替換。



◎ 連線對戰 (功能表 -> 開新局 -> 連線對戰)
---------------------------------------------------------------------
      可選擇2~4人的牌局,需有一人當伺服器端,負責在人數到齊後開牌局,
以及控制戰績的顯示時間。當伺服器關閉時,所有客戶端也會自動被關閉,非
伺服器的客戶端關閉(離開牌局),其餘客戶端也自動會被關閉。

1.如何建伺服器 : 選擇功能表『開新伺服器』,即可建立一個伺服器端玩家。
2.如何連到伺服器 : 在角色選擇面板輸入伺服器IP後,選擇功能表『連線到伺
                       服器』。待玩家到齊,伺服器端便可開啟牌局。



◎ 設定 (功能表 -> 設定)
---------------------------------------------------------------------
      設定值只要一點選,就會立即生效,本次所作的設定也會被記憶,
在下次遊戲啟動時還是可維持設定的效果。

1.出牌速度 : 極速、快速、正常、慢速。(預設值:出牌速度-正常)
2.靜音 : 可關閉背景音樂。(預設值:不靜音)



◎ 各家牌況 (牌桌上)
---------------------------------------------------------------------
檢視各玩家吃到的牌。



◎ 即時戰積 (牌桌上)
---------------------------------------------------------------------
檢視本回合的即時戰績。


pageicon 星期二 七月 14, 2009

[軟體發表] Gu MST Finder - 最小成本擴張樹探尋

名    稱:Gu MST Finder
版    本:1.0.0
平    台:Windows系列 (含Vista)
介    面:繁體中文
開發語言:C++
載    點:Gu_MST_Finder.zip (940KB)



◎畫面擷圖:





=================================================
◎簡介:
    Gu MST Finder為MST <Minimum-cost Spanning Tree>(最小成本擴張樹)
的探尋程式。支援文字檔(*.txt)定義與使用者自行繪圖兩種模式來繪製MST,成本
邊的建立則支援工程四則運算。

※本程式支援的工程四則運算式,在程式的『操作說明』中有詳細說明。


◎文字檔繪圖: (各參數間使用空白鍵隔開,一個或多個皆可)
------------------------------------------------------------------------------
格    式:  邊之『起點』   邊之『終點』      邊之成本
型    態:    <字串>         <字串>       <浮點數或整數>
特殊支援:     <無>           <無>       <工程四則運算式>


例如,檔名Graph_Example.txt之內容如下:
甲  乙  lg512*0.5
乙  丙  5!/4!-0.25
丙  丁  0x10-0b101
乙  丁  2k

將會得到MST:
Edge ( 甲 , 乙 )  ;  Weight: 4.5
Edge ( 乙 , 丙 )  ;  Weight: 4.75
Edge ( 丙 , 丁 )  ;  Weight: 11

Vertex: { 乙, 丁, 丙, 甲 }

程式將會自動判別頂點數,以環形方式繪出頂點與連接邊,最後描出MST的邊。


◎使用者自行繪圖:
------------------------------------------------------------------------------
1.畫 頂 點: 按一下滑鼠『右鍵』可繪一個頂點,頂點的ID為從0開始的整數,
            程式會自動分派。

2.畫    邊: 用滑鼠『左鍵』點選某頂點當基準點,此時基準點會高亮顯示
            , 再用滑鼠『左鍵』點選欲連往的頂點,便可建立一個邊。
            (※當基準點高亮顯示時,可用滑鼠再點一下便會取消基準點)

3.邊之成本: 當邊建立時,該邊的成本輸入方塊便會自動出現,可輸入工程
            四則運算式或單一浮點數、整數,例如: sin(pi/3)*log10+3k。

當圖形建立完成,按下『繪製MST』按鈕,便會畫出MST。


pageicon 星期六 九月 20, 2008

[軟體發表] Gu Calculator - 智慧型計算機

名     稱:Gu Calculator
版     本:1.0.4
平     台:Windows系列 (含Vista)
介     面:繁體中文、英文
開發語言:C++
載     點:Gu_Calculator.zip (1.00MB)



◎畫面擷圖:




=================================================
◎簡介:


    Gu Calculator是一款智慧型計算機軟體,以介面友善、操作簡單、功能豐富
,三大方向設計而成。提供有工程四則運算、參數式、以及檔案型批量運算功能,
浮點數之有效位數顯示可達15位,並內建小數14位之常量:圓周率(pi)、自然對數
(e)及黃金比例(gr)...等等,而計算結果也會顯示千分位逗號。


    它還支援2進制、8進制、16進制整數及浮點數混和輸入,計算結果除了十進制
答案外,也會同時顯示上述3種進制的答案。智慧型解析:例如輸入2pi或把字元用
許多空白隔開,它都可解析成2 * pi,輸入:8pi/-2pi,它也可算出正確答案-4。
按鍵盤上下鍵,可顯示之前輸入過的運算式;參數式可支援日期及BMI值的計算。(
程式內附Help與各功能操作範例。)


    Gu Calculator還有一個有趣的地方,藉由檔案運算的時間顯示,可以順便評估
您電腦之效能,以作者本身為例,有一個內含2萬行運算式(工程四則運算及參數式)
的檔案,以Intel Q6600預設時脈2.4G運算,運算時間平均約5.344秒;超頻至3.2G
時,則縮減到了4.110秒。



◎工程四則運算:
---------------------------------------------------------------------
<a> 基本運算:加(+)、減(-)、乘(*)、除(/)、取餘數(%)
<b> 進階運算:排列(p)、組合(c)、階層(!)、次方及N方根(^)、任意基底取對數(lb)
<c> 邏輯運算:AND(^)、OR(|)、XOR(?)、NOT(~)、位元左移(<)、位元右移(>)
<d> 三角函數:sin()、cos()、tan()
<e> 反三角函數:asin()、acos()、atan()
<f> 雙曲線函數:sinh()、cosh()、tanh)()
<g> 對數類函數:2基底對數函數lg()、10基底對數函數log()、自然對數函數ln()
<h> 徑度量與度度量互換函數rtd()、dtr()
<i> 攝氏與華氏溫度轉換函數ctf()、ftc()
<j> 其它類:平方根函數sqrt()、自然指數函數exp()、Floor函數floor()、Ceil函數
            ceil()、取倒數函數recl()、取絕對值函數abs()



◎內建常量:
---------------------------------------------------------------------
「gr」→ 1.61803398874989484820458683436563811 。(黃金比例)
「pi」→ 3.14159265358979323846264338327950288 。(圓周率)
「e」 → 2.71828182845904523536028747135266249 。(尤拉數)
「T」 → 1,000,000,000,000 。
「G」 → 1,000,000,000 。
「M」 → 1,000,000 。
「K」、「k」 → 1,000 。
「m」 → 0.001 。
「u」 → 0.000001 。
「n」 → 0.000000001 。



◎參數式:(各參數值皆支援工程四則運算) (型板熱鍵Ctrl+S)


<a> #avg 參數1 參數2 參數3... 。取各參數平均值。(常用於計算平均數)
<b> #wmn 參數1,權重1 參數2,權重2...。求加權平均數 (常用於計算學期總平均)
<c> #add 參數1 參數2 參數3... 。各參數連加。
<d> #sub 參數1 參數2 參數3... 。各參數連減。(常用於預算及實際開銷的計算)
<e> #mul 參數1 參數2 參數3... 。各參數連乘。
<f> #div 參數1 參數2 參數3... 。各參數連除。
<g> #gcd 參數1 參數2 參數3... 。找出參數列的最大公因數(GCD)與最小公倍數(LCM)。
<h> #bmi 身高(公分) 體重(公斤)。(計算BMI值,並顯示健康評估結果)
<i> #date 日期1 日期2。計算兩日期的時間差 (常用於計算令人懷念的日子距今多久了?)



◎檔案型批量運算:


以換行為間格(一行或多行皆可),可計算大量的工程四則運算或參數式。首先打開
Windows作業系統的筆記本(或其它文書編輯器),建立一個空的文字檔(*.txt)並輸
入您要作的運算後按儲存,例如:


sqrt(64)/2pi-2^-3^-2*sin(pi/3)-floor(sqrt(2))
-tan(pi/4)+sin(-pi/6)+cos(-pi/3)/-5!
#date 2009/01/01 2003/02/14
1000!
0b1010.10*0XEF-2e/4pi
#bmi 180 75
log1000*2lb128/0o0o25+tan(dtr(45))


按藍楓葉按鈕(Calculate File)或按熱鍵Ctrl+F,選擇剛剛您建立的*.txt,便會開
始運算。運算結束,主程式標題會顯示所花時間(精度到Mini Second),檔尾也會附
加載入及運算時間,而打開檔案後您即可看到運算結果如下:



<-- Created by Gu Calculator -->
================================
sqrt(64)/2pi-2^-3^-2*sin(pi/3)-floor(sqrt(2)) = -0.528591476827239
--------------------------------
-tan(pi/4)+sin(-pi/6)+cos(-pi/3)/-5! = -1.50416666666667
--------------------------------
#date 2009/01/01 2003/02/14
Instruction: Calculates the difference between date1 and date2


Date1: 2009/01/01
Date2: 2003/02/14


Seconds: 185,587,200
Minutes: 3,093,120
Hours: 51,552
Days: 2,148
Years: 5.88493150684932
--------------------------------
1000! = 4.02387260077094e+2567
--------------------------------
0b1010.10*0XEF-2e/4pi = 2,509.06737201028
--------------------------------
#bmi 180 75
Instruction: Calculate BMI(Body Mass Index) value and show conclusion


Stature (cm): 180
Weight (kg): 75


BMI: 23.1481481481481
Conclusion: Standard weight
--------------------------------
log1000*2lb128/0o0o25+tan(dtr(45)) = 2
--------------------------------
<-- Data loading time: 0 seconds -->
<-- Computing time: 0.016 seconds -->


 


★應用實例:
--------------------------------------------------------------------------------
(1) 康大在2005年的西洋情人節跟閃光在一起,距離現在他們在一起多久了?
請按Ctrl+S選擇#date參數,程式會自動插入今天日期,或自行Keyin也可,
最後輸入2005/02/14,整個運算式為:#date 2008/09/20 2005/02/14,答
案如下:


Seconds: 113529600
Minutes: 1892160
Hours: 31536
Days: 1314
Years: 3.6


--------------------------------------------------------------------------------
(2) 小萍打工三個月,第一個月賺12800花6500、第二個月賺10245花6100、
第三個月賺9800花5950,她平均一個月存多少錢?


#avg 12800-6500 10245-6100 9800-5950
Arguments: 【12800-6500】【10245-6100】【9800-5950】


Numbers: 【6300】【4145】【3850】


Amount: 3


Result: 4765


答案顯示他平均一個月可存4765元


-------------------------------------------------------------------------------
(3) 阿喜身高196公分,體重95公斤,請問他的BMI值多少?是否過重?
#bmi 196 85


BMI: 22.1261974177426
Conclusion: Standard weight


可以判斷阿喜的體重是標準的。


-------------------------------------------------------------------------------
(4) 羅隊長本月份有7000可以花,三餐一天預計花180元、一個月要加3次油,一次約100元、
買衣服花1200元,請問羅隊長一個月後剩多少錢?


請輸入:#sub 7000 30*180 100+100+100 1200


Arguments: 【7000】【30*180】【100+100+100】【1200】


Numbers: 【7000】【5400】【300】【1200】


Amount: 4


Result: 100


可以判斷羅隊長是月光族。


-------------------------------------------------------------------------------
(5) 今天要設計一個黃金比例的螢幕,已知長:36cm,那寬要設計成多少?
請輸入:36/gr,答案:22.25就是黃金比例的寬。若已知寬,那就乘gr即可得到長。
-------------------------------------------------------------------------------
(6) 要計算正弦(sin),角度30度的值? (2*pi=360度)
請輸入:sin(pi/6)或先用dtr把度度量轉徑度量再算,sin(dtr30),答案為:0.5。
-------------------------------------------------------------------------------
(7) 想得到0.5的反正弦是多少?
asin(0.5)=0.523598775598299,或再加rtd即可得到度度量,rtd(asin0.5) = 30 (度)
-------------------------------------------------------------------------------
(8) 求81的4次方根?1000的3次方根?
81^(1/4) = 3 ;1000^(1/3) = 10
-------------------------------------------------------------------------------
(9) 求3的4次方?求10的3次方?尤拉數(2.71828...)的8次方?
3^4 = 81 ; 10 ^3 = 1000 ; e^8 = 2980.95798704173
-------------------------------------------------------------------------------
(10) 求2的2次方倒數?
2^(-2) = 0.25 = 1/4
-------------------------------------------------------------------------------
(11) 2的多少次方會等於512?7的幾次方會等於100?(提示:lg()與lb)
lg(512) = 8 或 2lb512 = 8 ;7lb100 = 2.36658932490988
-------------------------------------------------------------------------------
(12) 5本書要挑3本出來有幾種挑法?6個人要排4個靶位有幾種排法?
5c3 = 10 ; 6p4 = 360
-------------------------------------------------------------------------------
(13) 有一網路卡卡號:00 0A 76 C2 15 B7,二進制是多少?
請輸入:0x 00 0A 76 C2 15 B7按Enter,Binary欄位便是答案。
-------------------------------------------------------------------------------
(14) 研究所的書報討論課程一週4人上台報Paper,小武抽到17號,他第幾週要上台報告?
ceil(17/4) = 5 ,所以小武第五週要報告。註:ceil()小數點無條件進位取整數。
-------------------------------------------------------------------------------
(15) 二進制00101011與16進制3F作『互斥或XOR』運算等於多少(二進制解)?
請輸入:0b00101011 ? 0x3f
答案-> Binary: 0b10100 。
-------------------------------------------------------------------------------
(16) 請問,一顆硬碟廠商標記為500G,實際在作業系統的可用容量有多大?
請輸入:500G/1024^3 ,答案為:465.661287307739,即:465.66G。
-------------------------------------------------------------------------------
(17) 請問,8、16、12、36、24的最大公因數與最小公倍數是多少?
請輸入:#gcd 8 16 12 36 24,答案:GCD:4(最大公因數)、LCM:144(最小公倍數)。
-------------------------------------------------------------------------------
(18) 小威各科學期成績如下,排隊理論:92分、3學分;類神經網路:88分、3學分;
書報討論:93分、2學分;高速網路:95分、3學分,請問他的總平均多少?(提示:
#wmn加權平均數),請輸入:#wmn 92,3 88,3 93,2 95,3,學分數:11,總平均:91.9分