作业帮 > 综合 > 作业

java 用while循环怎么做这题?求1000内的水仙花数(个位立方 + 十位立方 + 百位立方 = 这个数本身)

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/14 20:01:20
java 用while循环怎么做这题?求1000内的水仙花数(个位立方 + 十位立方 + 百位立方 = 这个数本身)
可以的话请注释下分析过程!
下面是我用for和while同时实现的!楼主请查看,不同的在告诉你!
public class NarcissusNumber
{
public static void main(String[] args)
{
for (int n = 1; n
再问: 能说下您是怎么分析的吗
再答: 个位立方 + 十位立方 + 百位立方 那么我们第一步就就需要取出个位 十位 百位 int i = n / 100; //百位数 234取模100等于2那么百位上面就取出来了。 int j = (n - i * 100) / 10; //十位数 对于十为来说就需要用234 -i(即百位上面的数) * 100(200) = 34 34/10 34取模10等于3 那么十位也出来了。 int k = n - i * 100 - j * 10; //个位数 个位取出就比较简单了 减去百位、十位就是个位了 234 - 200 - 30 = 4 个位也就出来了。 最后一步根据水仙花谁的规则: 水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153) 那么我们就可以得出那个是水仙花数了。