求解水仙花这题拜托大神了

这题算了一半只能自动检索却不能自己手动输入判断!求大神讲解啊!拜托了⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图片说明

public class ShuiXianShu
{

/**

  • 题目:打印出100-999之间所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
  • 例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

    • 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。* */ public static void main(String[] args) { for(int i=100;i<=999;i++) { int geWei,shiWei,baiWei; baiWei=i/100; shiWei=(i-baiWei*100)/10; geWei=i-baiWei*100-shiWei*10; if(i==geWei*geWei*geWei+shiWei*shiWei*shiWei+baiWei*baiWei*baiWei) { System.out.println(i); } }

    }

}

import java.util.Scanner;

public class Sxh {

public static void main(String[] args) {
    while (true) {
    Scanner sc = new Scanner(System.in);
    String s = sc.next();
    int i = Integer.parseInt(s);
    int a = i / 100;//百位
    int b = (i - a * 100) / 10;//十位
    int c = (i - a * 100 - b * 10);//个位

    if (a * a * a + b * b * b + c * c * c == i) {
        System.out.println(i+"是水仙花数");
    }else{
        System.out.println(i+"不是水仙花数");
    }
    }

}

}