37 lines
1.1 KiB
Java
37 lines
1.1 KiB
Java
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;
|
||
}
|
||
}
|