//
特殊的四位数
// 输出所有四位数(十进制)中具有如下属性的数:
// 输出所有四位数(十进制)中具有如下属性的数:
//四位数字之和等于其十六进制形式各位数字之和,也等于七十二进制形式的各位数字之和
#include < stdio.h >
int main()
{
int num, tmp;
for (num = 1000 ; num <= 9999 ; num ++ )
{
int s16 = 0 , s12 = 0 , s10 = 0 ; // num的各种进制之和
tmp = num;
while (tmp) // 等效于while(tmp != 0)
{
s16 += tmp % 16 ;
tmp /= 16 ;
}
tmp = num;
while (tmp)
{
s12 += tmp % 12 ;
tmp /= 12 ;
}
if (s16 != s12)
{
continue ;
}
tmp = num;
while (tmp)
{
s10 += tmp % 10 ;
tmp /= 10 ;
}
if (s16 == s10)
{
printf( " %d\n " , num);
}
}
return 0 ;
}
#include < stdio.h >
int main()
{
int num, tmp;
for (num = 1000 ; num <= 9999 ; num ++ )
{
int s16 = 0 , s12 = 0 , s10 = 0 ; // num的各种进制之和
tmp = num;
while (tmp) // 等效于while(tmp != 0)
{
s16 += tmp % 16 ;
tmp /= 16 ;
}
tmp = num;
while (tmp)
{
s12 += tmp % 12 ;
tmp /= 12 ;
}
if (s16 != s12)
{
continue ;
}
tmp = num;
while (tmp)
{
s10 += tmp % 10 ;
tmp /= 10 ;
}
if (s16 == s10)
{
printf( " %d\n " , num);
}
}
return 0 ;
}