用VB设计: 找出1000之内的所有完数。完数就是这样一个整数,它恰好等于它的因子之和。

例如:6的因子为1,2,3,而6=1+2+3,则6是完数、、求教!!... 例如:6的因子为1,2,3,而6=1+2+3,则6是完数、、
求教!!
展开
 我来答
瑞安阿芳
推荐于2016-01-16 · TA获得超过1947个赞
知道小有建树答主
回答量:749
采纳率:100%
帮助的人:922万
展开全部
Option Explicit
Private Sub Command1_Click() '这是调用部分,打印出1000内的所有完数
Dim j As Integer
For j = 2 To 1000
If IsPerfectNumber(j) Then Print j
Next
End Sub

Function IsPerfectNumber(n As Integer) As Boolean '这是判断是否为完数
Dim i As Integer, fact As Integer, sqrt As Integer, sum As Integer
If n < 2 Then Exit Function
sqrt = Int(Sqr(n))
sum = 1
For i = 2 To sqrt '只需算到开方为止
fact = n \ i
If fact = n / i Then '如果被i整除,则fact也是因子
sum = sum + fact + i
End If
Next
IsPerfectNumber = (sum = n)
End Function
百度网友e61cb296a
2012-03-31 · 超过10用户采纳过TA的回答
知道答主
回答量:94
采纳率:0%
帮助的人:24.8万
展开全部
这是个数学问题 不是vb问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式