VB代码求助
求一组3位数数字的类型:首先说明:数字个数是固定的3个,数字出现位置不分前后!比如:000或888为"豹子"012或123为"顺子"002或553为"对子"013或890...
求一组3位数数字的类型:
首先说明:数字个数是固定的3个,数字出现位置不分前后!
比如 :
000或888 为"豹子"
012或123 为"顺子"
002或553 为"对子"
013或890 为"半顺"
168或573 为"散码"
写就是福利彩票3D的号码类型
求高手帮忙写个VB代码
在此先谢了 展开
首先说明:数字个数是固定的3个,数字出现位置不分前后!
比如 :
000或888 为"豹子"
012或123 为"顺子"
002或553 为"对子"
013或890 为"半顺"
168或573 为"散码"
写就是福利彩票3D的号码类型
求高手帮忙写个VB代码
在此先谢了 展开
4个回答
展开全部
我只说核心代码思想
1.text1里面要求输入数字,然后增加一个按钮。
2.对text1设定只能输入数字以及最多输入三个数字
3.输入数字完成后点击按钮,首先用截取函数分别截取text1中各个数字,然后用if…then 判断语句来比较数字大小和类型,对于符合要求的即显示。。。
例如截取后三个数字分别是X Y Z ,if y=x,z=y,then '即msgbox"豹子"
if y=x+1,z=y+1,then msgbox"顺子"
以此类推。。。
因为我对你以上所讲的理解就是这样。所以,代码大概也就是这样了。
1.text1里面要求输入数字,然后增加一个按钮。
2.对text1设定只能输入数字以及最多输入三个数字
3.输入数字完成后点击按钮,首先用截取函数分别截取text1中各个数字,然后用if…then 判断语句来比较数字大小和类型,对于符合要求的即显示。。。
例如截取后三个数字分别是X Y Z ,if y=x,z=y,then '即msgbox"豹子"
if y=x+1,z=y+1,then msgbox"顺子"
以此类推。。。
因为我对你以上所讲的理解就是这样。所以,代码大概也就是这样了。
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Dim a, b, c, d, i
a = Val(Mid(Text1.Text, 1, 1))
b = Val(Mid(Text1.Text, 2, 1))
c = Val(Mid(Text1.Text, 3, 1))
For i = 1 To 3 '将数字重新按从小到大排列
If a > b Then
d = a
a = b
b = d
End If
If b > c Then
d = b
b = c
c = d
End If
Next i
If a = b And b = c Then
MsgBox "baozi"
Exit Sub
End If
If (a + 1) = b Then
If (b + 1) = c Then
MsgBox " shuzi"
Else
MsgBox "Banshu"
End If
Exit Sub
End If
If (b + 1) = c Then
MsgBox "Banshun"
Else
MsgBox "Sanma"
End If
a = Val(Mid(Text1.Text, 1, 1))
b = Val(Mid(Text1.Text, 2, 1))
c = Val(Mid(Text1.Text, 3, 1))
For i = 1 To 3 '将数字重新按从小到大排列
If a > b Then
d = a
a = b
b = d
End If
If b > c Then
d = b
b = c
c = d
End If
Next i
If a = b And b = c Then
MsgBox "baozi"
Exit Sub
End If
If (a + 1) = b Then
If (b + 1) = c Then
MsgBox " shuzi"
Else
MsgBox "Banshu"
End If
Exit Sub
End If
If (b + 1) = c Then
MsgBox "Banshun"
Else
MsgBox "Sanma"
End If
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先将得到的数字转换成字符InputS
然后判断:
if inputs="000" then
if inputs="888" then ‘这两个简单。
if instr(1,inputs,"0")>0 and instr(1,inputs,"1")>0 and instr(1,inputs,"2")>0 then '出现 "012",其他的自己写了。
以下的是判断有一对的,麻烦一点,用到下面的函数。
if StringCount(inputs,"0")=2 and StringCount(inputs,"2")=1 then '出现"002",其他的自己写。
Function StringCount(SourceString As String, SearchString As String)
Dim CountN As Integer, BeginN As Integer
CountN = 0
BeginN = 0
Do
BeginN = InStr(BeginN + 1, SourceString, SearchString)
If BeginN = 0 Then Exit Do
CountN = CountN + 1
DoEvents
Loop
StringCount = CountNEnd Function
然后判断:
if inputs="000" then
if inputs="888" then ‘这两个简单。
if instr(1,inputs,"0")>0 and instr(1,inputs,"1")>0 and instr(1,inputs,"2")>0 then '出现 "012",其他的自己写了。
以下的是判断有一对的,麻烦一点,用到下面的函数。
if StringCount(inputs,"0")=2 and StringCount(inputs,"2")=1 then '出现"002",其他的自己写。
Function StringCount(SourceString As String, SearchString As String)
Dim CountN As Integer, BeginN As Integer
CountN = 0
BeginN = 0
Do
BeginN = InStr(BeginN + 1, SourceString, SearchString)
If BeginN = 0 Then Exit Do
CountN = CountN + 1
DoEvents
Loop
StringCount = CountNEnd Function
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询