English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

請問,VB 6 要怎麼判斷出個位數、十位數?
要讓使用者用 Inputbox 輸入數字,
可是我用Right 、Mid、Left 都抓不準,
可不可以解釋該從哪個方向去想?

2006-06-09 11:54:45 · 4 個解答 · 發問者 Anonymous in 電腦與網際網路 程式設計

4 個解答

我來說說一個不一樣的
不過因為我已經很久沒有碰VB了
看您提到 Right、Mid、Left 這三個指令
所以我想您應該是想用字串的型式來處理
我想您可以使用取得字串(假設為s)長度的函數來取得x(假設取得長度為x)
然後再來使用 Right、Mid、Left 這三個指令處理

以下就是個【位數 / 十位數】字串方式的取得法
Right(s,1) / Right(s,2)
Mid(s,x,1) / Mid(s,x-1,1)
Left(s,x) / Left(s,x-)
若要還原成數字就將字串轉為數字再十位數*10+個位數即可

看得懂嗎?錯了不要怪我啊
這台電腦沒有裝VB6
不然就幫您試試了......人老了,記憶也快不行了

2006-06-09 19:12:04 補充:
不好意思<錯誤>Left(s,x) / Left(s,x-)這行少漏掉了一個1應該為<訂正>Left(s,x) / Left(s,x-1)

2006-06-09 12:28:27 · answer #1 · answered by 小石 7 · 0 0

'表單置1個CommandButton跟1個TextBoxPrivate Sub Command1_Click()        Cls        Test Val(Text1.Text)End SubPrivate Sub Test(ByVal N As Long)        Dim A, S$, Y%                A = Array("個", "十", "百", "仟", "萬")        S = N        Do            Print A(Y); "位數="; S Mod 10            S = Left(S, Len(S) - 1)            Y = Y + 1        Loop Until Y > UBound(A) Or Len(S) = 0End Sub

2006-06-09 12:20:15 · answer #2 · answered by W.J.S. 7 · 0 0

用除法、取餘數來做也行
例如:54 \ 10→十位數
54 mod 10→個位數

2006-06-09 12:09:10 · answer #3 · answered by W.B.G 6 · 0 0

如果是數字,則轉成整數後再用除法求餘數,要個位數則除以10,要十位數則除以100(記得先處理個位數)。
如果是字串:
1.轉成數字再以上述方法處理。
2.確認字串均為數字後,找到小數點位置(如無則由最右位數位置),去除小數及小數點後。最右位數為個位數,其餘類推。

2006-06-09 12:01:20 · answer #4 · answered by Diamond Liu 7 · 0 0

fedest.com, questions and answers