作者sky008888 (sky008888)
看板Visual_Basic
标题Re: [VB6 ] 连续循环数的出现
时间Sat Mar 24 19:39:18 2007
※ 引述《stormbird (单眼皮)》之铭言:
: 我想写一个在Text.text里面连续出现数字的一个东西
: 例如:我在Text1.text=48,Text2.text=51
: 而我要在Text3.text依序出现49,50,51
: 如果Text1.text=48,Text2.text=48
: 则Text3.text=48
: 我有先写出来,但是出现的都不是我想要
: 我这样写不知是否正确
: 请各位给我一点指教,指点指点我,谢谢
小弟改一下您的程式 (sorry, 身边电脑没装VB6, 用 .Net 假装一下)
Dim n1 As Integer
Dim n2 As Integer
'CInt是转换为integer的函数, vb6或有不同
n1 = CInt(Text1.Text)
n2 = CInt(Text2.Text)
'比较两数大小, 不过预防出现 n1=48, n2=49这种情形
'所以规定 abs(n1-n2) >1
if abs(n1-n2)>1 then
If n1 > n2 Then
For i = (n1+1) To (n2-1) Step -1
Text3.Text = ""
Text3.Text = i
Next i
ElseIf n1 < n2 Then
For i = (n1+1) To (n2-1) Step 1
Text3.Text = ""
Text3.Text = i
Next i
end if
'只剩下 abs(n1-n2)<=1 这种情形 (ex : n1=48, n2=49; 或是 n1=n2=48)
'如果n1=n2 => 两数相加除以2 答案不变
'如果n1=48, n2=49 => 看要出现 48.5 这种答案还是出现错误
'这边取 48.5
else
Text3.Text = ""
Text3.Text = CInt((n1+n2)/2)
end if
请参考, 如有错误尚请指正
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.174.190.186
1F:推 SmallBeeWayn:你反而把问题复杂化了 03/24 20:19
2F:→ sky008888:哈~~楼上写的比较简洁, 我是依照原 po 提供的 code 改一 03/24 21:46
3F:→ sky008888:下而已... 03/24 21:47