請問,VB 6 要怎麼判斷出個位數、十位數?
要讓使用者用 Inputbox 輸入數字,
可是我用Right 、Mid、Left 都抓不準,
可不可以解釋該從哪個方向去想?
2006-06-09 11:54:45 · 4 個解答 · 發問者 Anonymous in 電腦與網際網路 ➔ 程式設計
我來說說一個不一樣的
不過因為我已經很久沒有碰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⤋