java判斷是否為水仙花數


判斷一個整數,是否為水仙花數,指的是一個三位數,其各位上數字立方和等於其本身。例如153 = 1*1*1+3*3*3+5*5*5

  //方法1 使用String字符串獲取每個位置上的數值
        while(true){
            System.out.println("請輸入一個三位數整數");
            rawNum = sc.next();
            myNum = Integer.parseInt(rawNum);
            num1 = Integer.parseInt(String.valueOf(rawNum.charAt(0)));//獲取第1個位置上的數字
            num2 = Integer.parseInt(String.valueOf(rawNum.charAt(1)));//獲取第2個位置上的數字
            num3 = Integer.parseInt(String.valueOf(rawNum.charAt(2)));//獲取第3個位置上的數字
            if ((num1*num1*num1+num2*num2*num2+num3*num3*num3)==myNum){
                System.out.println(num1+""+num2+""+num3+ "是個水仙花數");
                break;
            }else{
                System.out.println(num1+""+num2+""+num3+"不是水仙花數,請重新輸入");
            }
        }
 //方法2 由於是三位整數,百位上的數就是三位數/100,十位數上的就是三位數%100/10,個位數的值就是三位數%10
         while(true){
            System.out.println("請輸入一個三位數整數");
            rawNums = sc.nextInt();
            num1 = rawNums / 100;
            num2 = rawNums % 100 /10;
            num3 = rawNums % 10;
            if ((num1*num1*num1+num2*num2*num2+num3*num3*num3)==myNum){
                System.out.println(num1+""+num2+""+num3+ "是個水仙花數");
                break;
            }else{
                System.out.println(num1+""+num2+""+num3+"不是水仙花數,請重新輸入");
            }
        } 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM