
※ 引述《tsungshien (zzz)》之銘言:
: ※ 引述《kairy (冷王)》之銘言:
: : 請問板上的各位先進
: : 小弟寫計算計的小程式時有點問題想問各位大大
: : 由於小弟的數字都是由button來輸入
: : 所以是用滑鼠來點入數字,就像您看到的小算盤一樣
: : 這是圖片
: : http://kairy.adsldns.org/caculator.jpg
: : 整數部份我比較沒有問題
: : Dim num1 As Double
: : 每按一個整數x就會變成num1 = 10 * num1 + x
: : 但是小數部份我就很頭痛了
: : 按下盤面上的"."以後
: : 不知道接下來輸入的數字要排在小數點後的第幾位~不知該如何做判斷
: : 請問有沒有解決的方法呢?
: 我想到的最簡單的方法是用字串型別來接收使用者輸入的值
: 要進行運算時再轉成double
我也贊成這位大大的說法,反正VB的字串和數值常可以「混用」,
我覺得你每按一個整數x就改變暫存值num1 = 10* num1+ x
要處理bug可能有些麻煩。
「計算機」,顧名思義,一定包含了「運算元」和「運算子」,
建議你使用上面這位大大的作法,並且當使用者按下
'+'、'-'、'*'、'/'、'='等運算子的時候再將數值暫存起來,
問題應該會簡單很多。(個人想法....僅供參考)
另外,我以前寫計算機程式的時候,
我將'.'這個button裡面放一個迴圈,
用mid(),檢查數值裡面是否有超過一個小數點,
不過這樣子你可能要重新改寫你的程式,
建議你開一個新執行檔,要是後悔決定不這麼做還有得反悔。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.231.176.40
