为了账号安全,请及时绑定邮箱和手机立即绑定

请问这个程序哪错了,输入400后,答案应该是220,284,但却一个答案也没现出。

请问这个程序哪错了,输入400后,答案应该是220,284,但却一个答案也没现出。

C++
qq_我是谁_45 2017-11-04 13:59:25
求数n之内的亲密对数。所谓“亲密对数”,即A的所有因子(包含1但不包含其本身)之和等于B,而B的所有因子之和等于A。我的程序:#include<iostream>using namespace std;int main(){int spouse(int);int v,n,i,add;cin>>n;for(i=2;i<n;i++)   {  add=spouse(i);  v=spouse(add);  if(add==v&&add!=v)  cout<<i<<" "<<add;}return 0;} int spouse(int add){    int t,sum=0;   for(t=1;t<=add;t++)    {  if(add%t==0)  sum=sum+t;}       return sum; }
查看完整描述

3 回答

已采纳
?
xungeer29

TA贡献46条经验 获得超20个赞

#include<iostream>
using namespace std;
int spouse(int);
int main()
{

int v, n, i, add;
cin >> n;
for (i = 2; i<n; i++)
{
 add = spouse(i);
 v = spouse(add);
 if (i==v&&i!=add)
  cout << i << " " << add << endl;
}
return 0;
}
int spouse(int add)
{
int t, sum = 0;
for (t = 1; t < add; t++)
{
 if (add%t == 0)
  sum = sum + t;
}
return sum;
}


查看完整回答
1 反对 回复 2017-11-04
  • 3 回答
  • 0 关注
  • 1838 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信