经典JAVA题三

问题描述:打印所有的“水仙花数”,所谓“水仙花数”就是一个三位数,其各位数字的立方和等于这个数字。

package JAVA;

public class test03 {

	/**
	 * @param args
	 * 打印所有水仙花数。所谓水仙花数就是一个三位数,其各位数字的立方和等于这个数本身。
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a[]=new int[898];
		System.out.println(a.length);
       for(int i=0;i<a.length;i++){
    	   a[i]=i+101;
       }    
       show(a);
	}
    
	/*
	 * 显示所有水仙花数
	 */
	private static void show(int[] a){
		int m,n,k,temp;
		double sum;
		for(int i=0;i<a.length;i++){
			m=a[i]/100; //百位数
			
			temp=a[i]%100;
			n=temp/10; //十位数
			k=a[i]%10;
			
			//sum=m*m*m+n*n*n+k*k*k;
		    sum=Math.pow(m, 3)+Math.pow(n, 3)+Math.pow(k, 3);
			if(sum==a[i]){
				System.out.print(a[i]+" ");
			}
		}
	}
}

 

posted @ 2011-11-14 01:18  月亮的影子  阅读(178)  评论(0编辑  收藏  举报