java求水仙花数

java求水仙花数,第1张

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

所以要判断一个三位数是不是水仙花数,得先取得这个三位数的的个位,十位和百位。

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

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

最后取得个位数:int GeWei = x-BaiWei100-ShiWei10很明显,就能得到个位数。

2:

intb = x/100;

int s = x/100%10;

int g = x%10;

求立方的方法:

1,x = BaiweiBaiweiBaiwei+ShiWeiShiWeiShiWei+GeWeiGeWeiGeWei

2,Java提供求n次方的方法:javalangMathpow(a, b);其表示为a的b次方。

最后程序:

第一种:

public class ShuiXianHuaShu {

public static void main(String[] args) {

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

for(int i=100;i<=999;i++){

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

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

int g = (i-s10-b100); //取得个位数

if(i==ggg+sss+bbb){

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

Systemoutprint(i+" "); //输出符合条件的数

}

}Systemoutprintln(); //换行

Systemoutprintln("水仙花数总共有"+x+"个"); //输出水仙花数的总数

}

}

第二种:

public class ShuiXianHuaShu {

public static void main(String[] args) {

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

for(int i=100;i<=999;i++){

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

int s = i%100/10; //取得十位数

int g = i%10; //取得个位数

if(i==Mathpow(b, 3) + Mathpow(s, 3) + Mathpow(g, 3)){

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

Systemoutprint(i+" "); //输出符合条件的数

}

}Systemoutprintln(); //换行

Systemoutprintln("水仙花数总共有"+x+"个"); //输出水仙花数的总数

}

}

土养水仙花方法:土培水仙花的方法是:把水仙花头竖植入花盆泥土内,泥土盖至 叶芽少许外露。若重植多个花头,排列时芽的弯向应朝花盆向应朝花盆中心。种植后经常浇灌清水,置于阳光充足,空气流通处。土养水仙花约35天左右开花

家庭养水仙无需化肥。

种在水里的水仙可以种在土里,水仙也能土壤种植。

种植在水里的水仙因水中的养分不足,容易引起水仙纤细,弱小,倒伏等症状。其次盆水较混时要换水以防水质变坏出现腐烂的症状,在种植上比较麻烦。

水仙种植在盆土中时因土壤中的养分比水中的养分充足,水仙在生长的过程中能从土壤中获取所需的养分提供生长,使水仙花雄壮有力,叶色浓绿株体高大,花大花香耐久。在种植管理上比较简单。

水仙花数就是3位数,每位数的立方和等于他本身,这个数就是水仙花数

水仙花数只是自幂数的一种,严格来说三位数的3次幂数才成为水仙花数。

一位自幂数:独身数

两位自幂数:没有

三位自幂数:水仙花数

四位自幂数:四叶玫瑰数

五位自幂数:五角星数

六位自幂数:六合数

七位自幂数:北斗七星数

八位自幂数:八仙数

九位自幂数:九九重阳数

十位自幂数:十全十美数

public class Narcissistic {

    public static void main (String[] args) {

        // 确保三位数

        for (int i = 100; i < 1000; i++) {

            // 百位

            int a = i % 100;

            // 十位

            int b = i / 10 % 10;

            // 个位

            int c = i % 10;

            // 每位数的立方和等于他本身

            if (Mathpow (a, 3) + Mathpow (b, 3) + Mathpow(c, 3) == i) {

                Systemoutprintln (i);

            }

        }

    }

}

你的是死循环了, while(i<1000), 如果你输入小于1000的话永远是true,一直在循环。你非用这个来判断的话, outputsetText("不是水仙花数"); 后面加个break;跳出循环!不知道你用 while(i<1000)是什么用意?

先写一个函数计算一个数字的立方为多少。命名为cube()

private static int cube(int n) {

return n n n;

}

判断这个数是不是水仙花数,求每一位数上的数的立方和是否为原数字本身即可。

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。不论什么Java应用服务器实质都是内置了某个版本的JDK。

100到1000间是水仙花数:

public class test {

public static void main(String[] args) {

for(int i=100; i<1000; i++){

int a = i/100;

int b = i/10%10;

int c = i%10;

if(Mathpow(a,3)+Mathpow(b,3)+Mathpow(c,3)==i)

Systemoutprintln(i+"是水仙花数");

}

}

}

运行结果:

153是水仙花数

370是水仙花数

371是水仙花数

407是水仙花数

以上就是关于java求水仙花数全部的内容,包括:java求水仙花数、java.水仙花数.while语句、java输出水仙花数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9484684.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存