主题:求助
mapletree
[专家分:0] 发布于 2010-09-10 15:04:00
想实现在subnet文本框中输入一个整数,判断这个数要等于2的次方,也就是一定要等于2,4,8.。。256,如果不等于这些数,就要等于大于最接近的数。比如输入一个9,就是2的4次方时就退出FOR循环,并且把2的4次方的值给subnet.
下面是我的代码,但是有问题,不知道问题出现在什么地方。当subnet的值输入是1,2,3,4,5,6,7,8时都没问题,当输入9以上的值是,就出问题了。高手解决一下。
For sq = 1 To 8
If subnet.Text = 2 ^ sq Then Exit For
If subnet.Text <> 2 ^ sq Then
If 2 ^ sq > subnet.Text Then
subnet.Text = 2 ^ sq
Exit For
End If
end if
Next sq
最后更新于:2010-09-10 15:10:00
回复列表 (共4个回复)
沙发
老大徒伤悲 [专家分:29120] 发布于 2010-09-10 15:39:00
Private Sub Command1_Click()
Dim n, m
n = 1
m = Val(Text1)
If m > 0 Then
Do While n < m
n = n + n
Loop
Text2 = n
Else
MsgBox "输入数据不能是负数或者零!"
Text1 = ""
End If
End Sub
1、能用加减法解决的不要用乘除法,能用乘除法解决的不要用指数和根式
2、能不重新计算的,不要重复计算
3、功能上能方便用户的尽量不要限制用户
4、必要的纠错信息不可以省略
板凳
老大徒伤悲 [专家分:29120] 发布于 2010-09-10 16:15:00
至于你在输入9时没有得到预期的效果,其原因在于:
If 2 ^ sq > subnet.Text Then
当sq=4时,观察下式及其结果,很是奇怪。
? 2^sq >text1,2^4>text1,2^sq >"9",2^4>"9",2^sq >9,2^4>9
False True False True True True
更进一步的原因,我找不出来。
3 楼
moke5 [专家分:30] 发布于 2010-09-10 23:19:00
寻找一直寻找机会的人!
一个趋势中的趋势的项目!
一个直销和传销终结者的项目!
一个帮助普通创业者成功的项目!
我们在互联网上正在拓展一个生意项目,现在正在寻求合作伙伴。我们认为成功的关键是你是什么人?还有你和谁在一起。我们在乎的是--您是否是有激情、有梦想的人。有意者请跟我们联系,我们和您谈谈,给您讲解一些生意概念,或许我们可以合作。一个集即时网游、交友,娱乐游戏,网络品牌代理商城,互联网平台项目招商进行中……详情QQ空间资料http://user.qzone.qq.com/909065437/infocenter
网商咨询 摩客天宇QQ 909065437
4 楼
C易特联盟 [专家分:60] 发布于 2010-10-03 21:39:00
C易特元亨QQ919169870
最新互助式项目。
这是一个互助的模式。
不推广人也有钱赚的。分A B两个网。
不推广的人在A网。推广的人 在B网。
B网推广的人帮助A网。
A网赚取6000元出局。
B网就多了。
详情了解加QQ919169870
http://blog.sina.com.cn/s/blog_6b19ec920100liv6.html
C易特奖励制度
http://blog.sina.com.cn/cyite6
C易特更多资料博客
我来回复