package Course_Codes; import java.util.Scanner; /* * 小赵对进制特别感兴趣,不光研究2进制,3进制,4进制,5进制...,突然有一次, * 他发现了一个特殊的数2992,这个数,它的十进制数表示,其四位数字之和为 2+9+9+2=22,它的十六进制数BB0,其四位数字之和也为22,同时它的十二进制数表示1894, 其四位数字之和也为22,啊哈,真是巧啊。 之后他就去翻书,发现这种数叫sky 数。但是要判断这样的敛还是有点麻烦啊,那么现在请你帮忙来判断任何一个十进制的四位数,是不是Sky数吧。 输入 输入含有一些小于100000000正整数,如果为0,则输入结束。 输出 若n为Sky数,则输出“#n is a Sky Number..”,否则输出“#n is not a Sky Number..”。 每个结果占一行。注意:#n表示所读入的n值。*/ public class sky数判断 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); if(Getsum(n,10)==Getsum(n,12)&&Getsum(n,10)==Getsum(n,16)) System.out.println(n+" is a Sky Number.."); else System.out.println(n+" is not a Sky Number.."); } public static int Getsum(int n,int r) { int sum=0; while(n>0) { sum+=n%r; n/=r; } return sum; } }