水花仙数

什么是水花仙数?
水花仙数就是一个n位数的每一位数字的n次方之和等于这个n为数,就称之为水花仙数
判断水花仙数步骤:
1.要知道这个数是几位。
2.得到每一位的数字的次方将其加起来。
3.将得到的数和之前的数进行对比,判断是否是水花仙数。

下面是java代码,有注释。

	public static boolean isWFN(int number) {
		boolean flag = false;
		//判断是几位数,将这个数转换成字符串判断长度,比较简便。
		int count=(number+"").length();
		System.out.println(count);
		//计算这个n位数的每位数的n次之和,进行比对。
		int all = 0;
		int num = number;
		for (int i = 0; i < count; i++) {
			int now = num%10;
			int yuan = now;
			//注意,这里是几次方,就得n-1次乘法,不然如果是n就是n+1次方了。
			for (int j = 1; j < count; j++) {
				//这里的次方是乘原来的那个数,所以我用yuan来存储原来的数。
				now=now*yuan;
			}
			all+=now;
			num = num/10;
		}
		//将两个数据进行对比。
		if(number==all) {
			flag=true;
		}
		return flag;
	}

你可能感兴趣的:(水花仙数)