| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1520 人关注过本帖, 1 人收藏
标题:Smith数问题,请大家帮忙啊!谢谢~
取消只看楼主 加入收藏
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
结帖率:66.67%
收藏(1)
已结贴  问题点数:5 回复次数:12 
Smith数问题,请大家帮忙啊!谢谢~
Smith数是指:对于一个整数,如果它的各位之和等于它的所有质因数的各位之和,那么就是Smith数。
图片附件: 游客没有浏览图片的权限,请 登录注册

原题在右边,图有些小,见谅啊!谢谢!
以下是我的代码:
程序代码:
#include<stdio.h>

void main()
{
    int n,i,sum=0;
    int a[100]={0},b[100];
    int j=0,m=0;
    int k,plus=0,count=0;
    int t,p;     //中间变量

    printf("输入数字:\n");

    while(scanf("%d",&n) && n!=0)
    {  
        t=n;

        while(t!=0)//求输入数字的各个位之和
        {
            sum+=t%10;
            t=t/10;
        }
      
        for(i=3; i<n && i%2!=0; i++) //求其所有因子的各个位之和
        {
            if(n%i==0)
            {
                p=i;

                while(p!=0)
                {
                    a[j]+=p%10;
                    p=p/10;
                }
               
                j++;
           
             n=n/i;
            }
        }

    

    for(k=0;k<j;k++)
    {
      plus+=a[k];
    }


      //plus+=2;
    
     if(plus==sum)
    {
      b[m]=1;
    }

     m++;
     count++;
   
    sum=0;
    plus=0;
    j=0;
   
   
    }


    printf("\n");

    for(m=0;m<count;m++)
    {
        if(b[m]==1)
        {
            printf("yes!\n");
        }

        else
        {
            printf("no!\n");
        }

    }
}














            



搜索更多相关主题的帖子: 质因数 
2011-02-16 20:56
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 2楼 pcbaichi
做的不对啊!你看我的截图,要像那样的输出结果、
2011-02-16 21:01
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 5楼 pcbaichi
那帮忙改下么!谢谢
2011-02-16 21:20
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 7楼 卧龙孔明
大哥!能具体点么??
2011-02-16 21:30
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 10楼 pcbaichi
太感谢了!我看看~
2011-02-16 21:44
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 10楼 pcbaichi
能解释下“i--”么?
2011-02-16 21:50
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 14楼 pcbaichi
我试着把for循环中的“number!=1”改为“i<number”怎么不对?
2011-02-16 22:01
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 16楼 pcbaichi
就是这一句:for( i = 2 ; number!=1 ; i++),为什么不能把number!=1改为i<number?
2011-02-16 22:07
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 18楼 pcbaichi
你这是分解质因数。。
2011-02-16 22:17
qishiye007
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2011-2-16
收藏
得分:0 
回复 20楼 pcbaichi
行。谢谢!
2011-02-16 22:25
快速回复:Smith数问题,请大家帮忙啊!谢谢~
数据加载中...
 
   



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

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