若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.例如,又如,220的因子之和为l+2+4+5+10+11+20+22+44+55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/28 11:57:38
若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.例如,又如,220的因子之和为l+2+4+5+10+11+20+22+44+55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与
xTKOQ+7$L:wnD&ftNQ _Z(D#DŢ1XZ?st\f"tʅ=!ns_|s_ 7Wiw޲>6-} ͇WyZ+Ź~Wbh>{s#0fWv!֦Yuֿ L{g A>I1Nb9QĐS$)8dBDᏡ@?@r~ Hl w_WUX]pt ݆z,:iKJmoqs¾ + jyVmC&g+ԏ#wl+BB}{R΂Z<6>2,7rgam3ZCOzμ+utcJAܾn_P'{]23D ?6~3:QWRHD7m_rguC=BSG`H4x7ӺG&ĝk}H;@bIMJT "kzB7T]1jR&YR gA~&-R?Ң$DN&)r

若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.例如,又如,220的因子之和为l+2+4+5+10+11+20+22+44+55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与
若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.
例如,又如,220的因子之和为l+2+4+5+10+11+20+22+44+55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与284为一对亲密数.
求3000以内的亲密数对.
编写一个自定义函数过程facsum(n as integer),函数的返回值是给正整数n的所有因子(包括1但不包括自身)之和.
在窗体的click 事件过程中调用已定义的函数facsum,寻找并在窗体上输出3000以内的所有亲密数对.在输出每对亲密数对时,要求小数在前,大数在后,并去掉重复的数对.

若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.例如,又如,220的因子之和为l+2+4+5+10+11+20+22+44+55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与
Private Sub form_Click()
  Dim i As Integer,j As Integer,k As Integer
  For i = 1 To 3000
    j = facsum(i)
    k = facsum(j)
    If i = k And i < j Then Print i; j
  Next i
End Sub


Function facsum(n As Integer) As Integer
  Dim s As Integer
  s = 0
  For i = 1 To n \ 2
    If n Mod i = 0 Then s = s + i
  Next i
  facsum = s
End Function