| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 966 人关注过本帖
标题:新手,HDU2097题,为什么我的错了。求。
只看楼主 加入收藏
夕痕
Rank: 1
来 自:临界
等 级:新手上路
帖 子:40
专家分:3
注 册:2013-4-22
结帖率:90%
收藏
已结贴  问题点数:10 回复次数:9 
新手,HDU2097题,为什么我的错了。求。
题目:Sky从小喜欢奇特的东西,而且天生对数字特别敏感,一次偶然的机会,他发现了一个有趣的四位数2992,这个数,它的十进制数表示,其四位数字之和为2+9+9+2=22,它的十六进制数BB0,其四位数字之和也为22,同时它的十二进制数表示1894,其四位数字之和也为22,啊哈,真是巧啊。Sky非常喜欢这种四位数,由于他的发现,所以这里我们命名其为Sky数。但是要判断这样的数还是有点麻烦啊,那么现在请你帮忙来判断任何一个十进制的四位数,是不是Sky数吧。
 

Input  
 输入含有一些四位正整数,如果为0,则输入结束。

Output
若n为Sky数,则输出“#n is a Sky Number.”,否则输出“#n is not a Sky Number.”。每个结果占一行。注意:#n表示所读入的n值。

 
#include<stdio.h>
int main()
{
    int i,t,x,y,p,z,a,b,c,q,g,h,l,m;
    while(scanf("%d",&t),t)
    {
        g=t/1000;
        h=t/10%10;
        l=t/100%10;
        m=t%10;
        x=t/16/16/16;
        y=t/16%16;
        z=t/16/16%16;
        p=t%16;
        a=t/12/12/12;
        b=t/12%12;
        c=t/12/12%12;
        q=t%12;
        i=x+y+z+p;
        if(g+h+l+m==i)
            {
                if(a+b+c+q==i)
                    printf("%d is a sky Number.\n",t);
                else
                    printf("%d is not a Sky Number.\n",t);
            }
        else
            printf("%d is not a Sky Number.\n",t);

    }
    return 0;
}
搜索更多相关主题的帖子: 十六进制 二进制 十进制 正整数 而且 
2013-07-23 09:34
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9032
专家分:54061
注 册:2011-1-18
收藏
得分:10 
没仔细看,仅就
题目要求输出 is a Sky Number.
而你却写成   is a sky Number.
就该拖出去乱棍打杀,为什么不用拷贝?
2013-07-23 09:58
夕痕
Rank: 1
来 自:临界
等 级:新手上路
帖 子:40
专家分:3
注 册:2013-4-22
收藏
得分:0 
回复 2楼 rjsp

爱的本质是赋予一个人伤害自己的权利。
2013-07-23 10:00
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9032
专家分:54061
注 册:2011-1-18
收藏
得分:0 
回复 3楼 夕痕
而且代码毫无美感,那变量名起得……

程序代码:
#include<stdio.h>
int main()
{
    unsigned t;
    while( scanf("%u",&t)==1 && t!=0 )
    {
        unsigned a10 = t/1000%10;
        unsigned b10 = t/100%10;
        unsigned c10 = t/10%10;
        unsigned d10 = t/1%10;

        unsigned a12 = t/1728%12;
        unsigned b12 = t/144%12;
        unsigned c12 = t/12%12;
        unsigned d12 = t/1%12;

        unsigned a16 = t/4096%16;
        unsigned b16 = t/256%16;
        unsigned c16 = t/16%16;
        unsigned d16 = t/1%16;

        unsigned s10 = a10 + b10 + c10 + d10;
        unsigned s12 = a12 + b12 + c12 + d12;
        unsigned s16 = a16 + b16 + c16 + d16;

        if( s10==s12 && s10==s16 )
            printf( "%u is a Sky Number.\n", t );
        else
            printf( "%u is not a Sky Number.\n", t );
    }

    return 0;
}

2013-07-23 10:14
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
交流一下对代码的审美。

程序代码:
#include<stdio.h>

int cal(int a, int base)
{
    int s;
    for(s = 0; a > 0; a /= base)
        s += a % base;
    return s;
}

int isSky(int a)
{
    int s;
    s = cal(a, 10);
    if(s != cal(a, 16)) return 0;
    if(s != cal(a, 12)) return 0;
    return 1;
}

int main()
{
    int a;
    while(scanf("%d", &a), a)
        printf("%d %s a Sky Number.\n", a, (isSky(a) ? "is" : "is not"));
    return 0;
}

重剑无锋,大巧不工
2013-07-23 11:16
岁月如刀
Rank: 6Rank: 6
来 自:冰冻星球
等 级:侠之大者
威 望:7
帖 子:165
专家分:477
注 册:2013-7-21
收藏
得分:0 

我一看4楼功底就比5楼好。

Now. Game over.
2013-07-23 11:22
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
回复 6楼 岁月如刀
好眼力,以后请多指教!

重剑无锋,大巧不工
2013-07-23 11:38
岁月如刀
Rank: 6Rank: 6
来 自:冰冻星球
等 级:侠之大者
威 望:7
帖 子:165
专家分:477
注 册:2013-7-21
收藏
得分:0 
以下是引用beyondyf在2013-7-23 11:38:40的发言:

好眼力,以后请多指教!


我是开个玩笑的哈。其实,我是想向你学习~

哈哈。我要去上班了。以后多多指教~

Now. Game over.
2013-07-23 11:47
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9032
专家分:54061
注 册:2011-1-18
收藏
得分:0 
回复 6楼 岁月如刀
汗,你这是散风点火呀^_^
2013-07-23 15:15
岁月如刀
Rank: 6Rank: 6
来 自:冰冻星球
等 级:侠之大者
威 望:7
帖 子:165
专家分:477
注 册:2013-7-21
收藏
得分:0 
以下是引用rjsp在2013-7-23 15:15:06的发言:

汗,你这是散风点火呀^_^

哈哈。经不起挑逗则成不了大事~~对不对~~~小哥~~

Now. Game over.
2013-07-23 17:44
快速回复:新手,HDU2097题,为什么我的错了。求。
数据加载中...
 
   



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

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