注册 登录
编程论坛 VB6论坛

求高手帮我看看这道程序有没有错!

xiaoqing2014 发布于 2014-05-15 12:27, 340 次点击
利用FOR循环输出“完全数”
Private sub form_click()
Dim m%,n%,x%,t%,s%
m=inputbox("请输入一个数")
n=inputbox("请输入一个数")
if m>n then t=m,m=n,n=t
for x=m to n
for i=2 to x-1
if x mod i=0 then
s=s+i
next i
if s=x then
print x
next x
End sub
求高手帮我看看这道程序有没有错!
3 回复
#2
风吹过b2014-05-16 09:24
Private Sub form_click()
Dim m%, n%, x%, t%, s%, i%
m = InputBox("请输入一个数")
n = InputBox("请输入一个数")
If m > n Then t = m: m = n: n = t
For x = m To n
s=0
For i = 1 To x/2

If x Mod i = 0 Then s = s + i
Next i
If s = x Then Print x
Next x
End Sub

算法有误,语法有误,输入时不仔细,也有误。
#3
xiaoqing20142014-05-16 13:24
回复 2 楼 风吹过 b
谢谢指教!
不过你的第二个循环我不明白
For i=1 to x/2
你能给我解释一下吗?
#4
风吹过b2014-05-16 15:34
你是求整除。
X / (X/2) = 2
当括号里的数字再大一点时,就不会再等2了,因为只能为 1.??????
1