1. 程式人生 > >java判斷一個三位數字是否水仙花數

java判斷一個三位數字是否水仙花數

/**
輸入一個三位數判斷是不是水仙花數 水仙花數是指一個三位數的各位的立方和等於該數本身。
 */
import java.util.Scanner;

public class TestWork {
	public static void main(String[] args) {
		System.out.println("請輸入一個三位數");
		Scanner sc = new Scanner(System.in);
		if (sc.hasNextInt()) {
			int num = sc.nextInt();
			if (num > 99 && num < 1000) {
				int a = num / 100;// 百
				int b = num / 10 % 10;// 十
				int c = num % 10;// 個
				int result = (int) Math.pow(a, 3) + (int) Math.pow(b, 3) + (int) Math.pow(c, 3);
				if (result == num) {
					System.out.println(num + "是水仙花數");
				} else {
					System.out.println(num + "不是水仙花數");
				}
			} else {
				System.out.println("請輸入一個三位數");
			}
		} else {
			System.out.println("請輸入正整數");
		}
	}
}

/**
找出100-999之間所有的水仙花數
 */
public class TestWork {
	public static void main(String[] args) {
		int Narcount=0;//計數
		for (int i = 100; i <= 999; i++) {
			int a = i / 100;// 百
			int b = i / 10 % 10;// 十
			int c = i % 10;// 個
			int result = (int) Math.pow(a, 3) + (int) Math.pow(b, 3) + (int) Math.pow(c, 3);
			if (result == i) {
				Narcount++;
				System.out.print(i+"\t");  
                if(Narcount%5==0){  
                    System.out.println();  
                }  
			} 
		}
	}
}