分析:水仙花数是指:一个三位数,其各位数字立方和等于该数本身。例如: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输出水仙花数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)