| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 258 人关注过本帖
标题:关于函数
只看楼主 加入收藏
yukuai1991
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-6-14
结帖率:66.67%
收藏
已结贴  问题点数:5 回复次数:3 
关于函数
若有两个整数a和b,把a的全部约数(不包括本身)相加,其结果等于b,而把b的全部约数(不包括本身)相加,其结果恰好等于a,那么a和b就称为亲和数对。例如:220和 284就是亲和数对。
    220的所有约数相加:1+2+4+5+10+11+20+22+44+55+110 = 284。 284的所有约数相加:
   1+2+4+71+142 = 220。
    此外,完全数是特殊的亲和数,因为完全数自己和自己亲和。例:6 = 1+2+3  编程实现:求10000以内的亲和数对(含完全数),用等式显示约数和。
为什么程序动不了。。。。。。。。。。。。。。。。
#include<stdio.h>


void Circle(int a[81],int n)
{
    int i,j=0;
    for(i=1;i<n;i++)
    {
        if(n%i==0)
        {
            a[j]=i;j++;
        }
    }
}
 






void main()
{
    int n=0,m=0,z=0,sum1=0,sum2=0,a[81]={0},b[81]={0};
    printf("程序现在开始:\n");
    for(n=1;n<100;n++)
        for(m=1;m<100;m++)
        {
            Circle(a,n);
            Circle(b,m);
            for(z=0;z<81;z++)
            {
                sum1=sum1+a[z];
            }
            for(z=0;z<81;z++)
            {
                sum2=sum2+b[z];
            }
            if(sum1==m&&sum2==n)
            {
                if(n==sum1)
                {
                   for(z=0;z<81;z++)
                {
                    if(a[z]==0)break;
                    printf("%d= ",m);
                    
                    printf("%d+",a[z]);
                }
                }
                for(z=0;z<81;z++)
                {
                    if(a[z]==0)break;
                    printf("%d= ",m);
                  
                    printf("%d+",a[z]);
                }
                printf("/n");
                for(z=0;z<81;z++)
                {
                    if(b[z]==0)break;
                    printf("%d= ",n);
                    
                    printf("%d+",b[z]);
                }
                        
            }







        }


}
2011-07-14 20:47
赵立华
Rank: 1
来 自:甘肃庆阳
等 级:新手上路
帖 子:7
专家分:8
注 册:2011-5-15
收藏
得分:3 
a[81]不能存下1000-10000的所有约数,因此算法有问题
2011-07-14 21:14
赵立华
Rank: 1
来 自:甘肃庆阳
等 级:新手上路
帖 子:7
专家分:8
注 册:2011-5-15
收藏
得分:0 
还可能是进入死循环
2011-07-14 21:29
wjm22
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:44
专家分:118
注 册:2011-7-5
收藏
得分:3 
算法太复杂了,我用手机上,你先试下单编完全数,这个程序只是把完全数用两遍,我明天帮你搞
2011-07-14 21:52
快速回复:关于函数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017193 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved