做这道题全因为这个题目,Sky~
其实就是考你10进制转其他进制的算法,写了一个通用的函数,KO~
#include <stdio.h>
#include <math.h>
int calSumInSomeSystem(int DecNum, int System)
{
int sum = 0;
int a = DecNum, b=System;
int c = 0;
while(a != 0)
{
c = a%b;
a = a/b;
sum+=c;
}
return sum;
}
void main()
{
int m;
while(scanf("%d",&m) && m != 0)
{
int sum1 = calSumInSomeSystem(m,16);
int sum2 = calSumInSomeSystem(m,12);
int sum3 = calSumInSomeSystem(m,10);
if(sum1 == sum2 && sum2 == sum3)
printf("%d is a Sky Number.\n",m);
else
printf("%d is not a Sky Number.\n",m);
}
}