请编程求大于1000的第一个"完全数"窗体上有一个文本框,将计算结果显示在文本框里.

来源:百度知道 编辑:UC知道 时间:2024/04/28 17:03:38
请编程求大于1000的第一个"完全数"窗体上有一个文本框,将计算结果显示在文本框里.
说明:一个数的因子之和等于这数本身,则这个数就叫做完全数.例如.28的因子1,2,3,7,14,其 和28=1+2+4+7+14所以28是完全数
用VB

其中Text1是我所建的文本框的名字
------------------------
n = 1000
Sum = 1

Do While (n <> Sum + 1)
DoEvents '处理鼠标等动作,防止程序死掉
n = n + 1
Sum = 0
temp = Sqr(n) ' 使用temp减少计算
For i = 2 To temp
DoEvents
If n Mod i = 0 Then
Sum = Sum + i + n / i
End If
Next i
Loop
Text1.Text = n

结果是:
8128

我用QB写的程序如下:
DIM i, j, ok, s AS INTEGER
i = 1000
ok = 0
DO WHILE ok = 0
s = 0
FOR j = 1 TO i \ 2 + 1
IF i / j = i \ j THEN s = s + j
NEXT
IF s = i THEN ok = 1 ELSE i = i + 1
LOOP
PRINT i

你自己转为VB吧,应该不太难。