|
VB编写一个函数过程:
判断一个已知数m是否完数(完数是指该数本身等于它各个因子之和,如6=1+2+3,6就是一个完数;
主调程序调用此函数求出1000以内的所有完数,并把所求完数显示出来
函数形式为:function ws(byval m%) as boolean
不是要返回数字么 as 布尔值的话就返回true false了 - Function ws(ByVal m%) '=ws(row(a1)) 下拉
- Dim x%, y%, z%, r%, arr()
- For x = 1 To 1000
- z = 0
- For y = 1 To x \ 2
- If x Mod y = 0 Then z = z + y
- Next
- If x = z Then
- r = r + 1
- ReDim Preserve arr(1 To 1, 1 To r)
- arr(1, r) = x
- End If
- Next
- ws = arr(1, m)
- End Function
复制代码
|
|