java算法——打印水仙花数

来源:互联网 发布:mmd工口动作数据 编辑:程序博客网 时间:2024/05/21 07:49
//打印100000以内的水仙花数

//思路:除10取商,循环,计算数字的长度;除10取余得到每一位数

<span style="font-size:18px;">package com.suanfa;import java.util.*;public class Shuixianhua {public static void main(String[] args) {Shuixian sx=new Shuixian();for(int i=100;i<=100000;i++){if(sx.isShuixian(i)){System.out.println(i+"是水仙花数");}}}}class Shuixian{//判断是不是水仙花数public boolean isShuixian(int number){int temp=number;int result=0;for(int i=1;i<=getLength(number);i++){result+=Math.pow((temp%10),getLength(number));temp/=10;}if(result==number){return true;//是水仙花数}else{return false;//不是水仙花数}}//获取一个数的位数public int getLength(int number){int count=0;while(number/10>0){if(number/10!=0){number/=10;count++;}}return count+1;}}</span>


0 0
原创粉丝点击