ハング電動ブラシOJタイトル(2097)

Sky数

件名の説明:

空は奇妙なことのように育ったが、また、デジタルに特に敏感で生まれ、偶然、彼は面白い4桁2992は、この数、その小数表現を見つけ、その4桁の合計2 + 9 + 9 + 2 = 22、さらに4桁の和であることBB0進数は、また、4桁22の和であり、その10進数1894、アハ、一致ああしながら、22であります。スカイは非常に4桁の数字のように、彼のための発見のため、ここでは、スカイの数を呼び出します。しかし、この数はまだ少し面倒で判断する、ああ、今、あなたは4桁の10進のいずれかを決定するのに役立ちます場合は、それが空の番号ではありません。

入力

入力は、それが0であれば、いくつかの4つの正の整数が含まれ、入力端。

出力

nはスカイの数である場合には、出力「#nがスカイ数である。」、そうでなければ「#nがスカイ数ではありません。」。各結果行。注:#Nは、n値の読み出しを表します。

サンプル入力

機2992 
1234 
0

サンプル出力

2992年にはスカイ数です。
1234スカイ数ではありません。

その答えによって:

#include<stdio.h>
int trans(int n,int r){     //将十进制数转换为r进制 
	int sum=0;
	while(n){
		sum+=n%r;
		n/=r;
	}
	return sum;
}
int main()
{
	int m,i; 
    while(~scanf("%d",&m))
    {   
        if(m==0)break;     //如果为0,则输入结束
        if(trans(m,10)==trans(m,16)&&trans(m,10)==trans(m,12)){
        	printf("%d is a Sky Number.\n",m);
		}else{
			printf("%d is not a Sky Number.\n",m);
		}
	}  
    return 0;
}

 

公開された76元の記事 ウォンの賞賛3 ビュー1858

おすすめ

転載: blog.csdn.net/ZhangShaoYan111/article/details/104343061