早教吧作业答案频道 -->其他-->
若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B.若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.求10000
题目详情
若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B
.若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.求10000以内的所有亲密数对.
例如,6的因子之和为1+2+3=6,因此6与6为一对亲密数(即6自身构成一对亲密数);
220的因子之和为1 + 2 + 4 + 5 + 10 + 11 + 20 + 22 + 44 +55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与284为一对亲密数.
具体要求如下:
(1)编制一个函数facsum(n),返回给定正整数n的所有因子(包括1但不包括自身)之和.
(2)编制一个主函数,调用(1)中的函数facsum( ),寻找并输出10000以内的所有亲密数对.
(3)输出要有文字说明.在输出每对亲密数时,要求小数在前、大数在后,并去掉重复的数对.
#include
void main()
{
\x09int facsum(int n);
\x09int a, b, c;
\x09for (a = 1; a < 10001; a++)
\x09{
\x09\x09b = facsum(a);
\x09\x09c = facsum(b);
\x09\x09if (a == c || a >= b)
\x09\x09\x09printf("%d,%d\n", b, a);
\x09}
}
int facsum(int n)
{
\x09int d, e=0;
\x09for (d = 1; d < n; d++)
\x09{
\x09\x09if (n%d==0)
\x09\x09\x09e = e + d;
\x09}
\x09return(e);
}
求高手指导一下哪里错了?
.若正整数A的所有因子(包括1但不包括自身,下同)之和为B,而B的因子之和为A,则称A和B为一对亲密数.求10000以内的所有亲密数对.
例如,6的因子之和为1+2+3=6,因此6与6为一对亲密数(即6自身构成一对亲密数);
220的因子之和为1 + 2 + 4 + 5 + 10 + 11 + 20 + 22 + 44 +55+110=284,而284的因子之和为1+2+4+71+142=220,因此,220与284为一对亲密数.
具体要求如下:
(1)编制一个函数facsum(n),返回给定正整数n的所有因子(包括1但不包括自身)之和.
(2)编制一个主函数,调用(1)中的函数facsum( ),寻找并输出10000以内的所有亲密数对.
(3)输出要有文字说明.在输出每对亲密数时,要求小数在前、大数在后,并去掉重复的数对.
#include
void main()
{
\x09int facsum(int n);
\x09int a, b, c;
\x09for (a = 1; a < 10001; a++)
\x09{
\x09\x09b = facsum(a);
\x09\x09c = facsum(b);
\x09\x09if (a == c || a >= b)
\x09\x09\x09printf("%d,%d\n", b, a);
\x09}
}
int facsum(int n)
{
\x09int d, e=0;
\x09for (d = 1; d < n; d++)
\x09{
\x09\x09if (n%d==0)
\x09\x09\x09e = e + d;
\x09}
\x09return(e);
}
求高手指导一下哪里错了?
▼优质解答
答案和解析
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
希望能解决您的问题.
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
希望能解决您的问题.
看了 若正整数A的所有因子(包括1...的网友还看了以下:
看拼音填空1.我们欢快地在ru3nmi2nmi2n()的雪地上做游戏。2.冰雪渐渐地r$nghu4 2020-05-13 …
“仙娥今下嫁,骄子自同和.剑戟归田尽,牛羊绕塞多.”“但使边城静,娥眉敢爱身.千秋青冢在,犹是汉宫 2020-05-13 …
一个转身的距离,虽然说是一个转身的距离,但它其实真的很远,有些一转身就是一辈子的离去,有些就是我并 2020-05-14 …
某非典疑似病人夜里开始发烧,早晨烧得很厉害,医院及时抢救后体温开始下降,到中午时体温基本正常.但是 2020-05-16 …
鱼类的身体两侧各有一条侧线,其作用是和.鱼鳃由鳃弓、鳃耙和腮丝构成,而腮丝内部密布但许多.鱼的体内 2020-06-17 …
如图,通过在圆中添加不同数目的直径,得到第①个圆中有2条弧,第②个圆中有12条弧(包括劣弧、优弧、 2020-06-23 …
(2007•齐齐哈尔)牙齿中含珐琅质,它本身是一种坚硬物质,不容易受损.但口腔内酸性过强,酸性物质 2020-06-27 …
人感染埃博拉病毒(EV)的致死率可高达90%.EV的主要靶细胞是吞噬细胞、血管内皮细胞、肝细胞和肾 2020-07-01 …
如图,夏天经常看到一些小鸟站落在110KV的高压输电线上,虽然通电的高压线是裸露的电线,但小鸟仍能 2020-07-06 …
下列各句,标点符号使用正确的一句是()A.金先生终身未娶,长期独身,但对工作、对学问都热爱到了痴迷 2020-07-06 …