「所有水仙花数java」所有水仙花数代码

博主:adminadmin 2022-11-22 18:30:10 99

本篇文章给大家谈谈所有水仙花数java,以及所有水仙花数代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java 编程找出所有的水仙花数(水仙花数)。

代码如下:

package com.vo;

public class Shuixianhua {

public static void main(String[] args) {

int a=0;

int b=0;

int c=0;

for(int i=100;i999;i++)

{

a=i/100;

b=i/10%10;

c=i%10;

if(i==(a*a*a+b*b*b+c*c*c))

System.out.println(i);

}

}

}

首先水仙花数”是指一个三位数,其各位数字立方和等于该数,

如:153是一个“水仙花数”,因为1的三次方+5的三次方+3的三次方等于153

解此题的关键是怎能样从一个三位数中分离百位数、十位数、个位数。可以这样做,设该三位数以i代表,由a,b,c三个数字组成。

(1)百位数字a:a=int(i/100).

(2)十位数字b:b=int((i-100*a)/10)

(3)个位数字c:c=i-int(i/10)*10.

然后在根据上述代码可得

扩展资料:

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。

参考资料:水仙花数百度百科

java输出所有水仙花数

public static void main(String[] args) {

         int x = 0;        //定义水仙花数的个数

         for(int i=1;i=1000;i++){

             int b = i/100;        //取得百位数

             int s = (i-100*b)/10;        //取得十位数

             int g = (i-s*10-b*100);        //取得个位数

               

             if(i==g*g*g+s*s*s+b*b*b){

                 x++;    //每次符合水仙花数条件,则x+1;

                 System.out.print(i+" ");    //输出符合条件的数

         }

         }System.out.println();        //换行

         System.out.println("水仙花数总共有"+x+"个");    //输出水仙花数的总数

     }

分析:水仙花数是指:一个三位数,其各位数字立方和等于该数本身。例如:370=33+73+00.这就说明370是一个水仙花数。

所以要判断一个三位数是不是水仙花数,得先取得这个三位数的的个位,十位和百位。这里我由一下几种方法:

1:

先取得他的百位:int BaiWei = x/100; 因为int是整形,所以不会进行四舍五入,也不会管小数点后面的数。

再取得十位:int ShiWei = (x-BaiWei*100)/10;先用这个数减去百位数*100,再除以10,原因同上。

最后取得个位数:int GeWei = x-BaiWei*100-ShiWei*10.很明显,就能得到个位数。

java 打印出所有的 "水仙花数 "

java 打印出所有的 "水仙花数 ":

for (int number=100;number=999;number++ ){

    int gewei=number%10;

    int shiwei=number/10%10;

    int baiwei=number/100%10;

    if (gewei*gewei*gewei+shiwei*shiwei*shiwei+baiwei*baiwei*baiwei==number){

System.out.println("水仙花数是:"+number);

}

}

java编程,实现打印出所有的 "水仙花数 "

public static boolean judge(int i){

int min=0;//设置查找水仙花数的最小值

int max=1000;//设置查找水仙花数的最大值

int ge = i%10;

int shi = i/10%10;

int bai = i/100;

if(i==ge*ge*ge+shi*shi*shi+bai*bai*bai){

System.out.println(i+"是水仙花数字");

}

}

public static void main(String[] args) {

for(int i=min;imax;i++){

judge(i);

}

java求水仙花数,怎么样统计水仙花数的个数啊?

统计水仙花数的个数的话可以使用一个变量来计数,循环判断如果这个数是水仙花数的话,就把这个数加1。

具体示例代码如下:

publicclassDemo1{

publicstaticvoidmain(String[]args){

System.out.println(\\\"100~999之间的水仙花数是:\\\");

intcount=0;

for(intcustNo=100;custNolt;=999;custNo++){

intgeWei=custNo%10;

intshiWei=custNo/10%10;

intbaiWei=custNo/100%10;

if(custNo==geWei*geWei*geWei+shiWei*shiWei*shiWei+baiWei*baiWei*baiWei){

count++;

System.out.println(custNo);

}

}

System.out.println(\\\"个数:\\\"+count);

}

}

接下来介绍下什么是水仙花数:

水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等于它本身。

java水仙花数

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);

}

}

}

}

这个是我以前做过的,楼主可以参考

所有水仙花数java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于所有水仙花数代码、所有水仙花数java的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。