
正文
java打印水仙花数代码 用java打印出所有的水仙花数
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
怎么用java打印出水仙花数
public
class
ShuiXianHua{
public
static
void
main(String[]
args){
/**
题目:打印水仙花数
含义:水仙花数是指一个
n
位数
(
n≥3
),它的每个位上的数字的
n
次幂之和等于它本身(例如:1^3
+
5^3+
3^3
=
153)
思路:求出每位数字,比如一个3位数(求出个、十、百位上的数),满足上面的条件,即是水仙花数
*/
int
a,b,c;
System.out.println("三位数中所有的水仙花数为:");
for(int
n
=
100;n
=
999;n++){
a
=
n
/100;
//获取百位数字
b
=
n
%
100
/10;
//获取十位数字
c
=
n
%10;
//获取个位数字
if(a*a*a
+
b*b*b
+
c*c*c
==
n){
System.out.println(n);
}
}
}
}
相关问答
Q1: 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.很明显,就能得到个位数。
Q2: 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);
}
}
Q3: java水仙花数
public class ShuiXianShu
{
/**
* 题目java打印水仙花数代码:打印出100-999之间所有java打印水仙花数代码的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
* 例如:153是一个"水仙花数",因为153=1java打印水仙花数代码的三次方+5java打印水仙花数代码的三次方+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);
}
}
}
}
这个是我以前做过的,楼主可以参考
Q4: java中for循环怎样打印出所有的"水仙花数"?
先写一个函数计算一个数字java打印水仙花数代码的立方为多少。命名为cube()
private static int cube(int n) {
return n * n * n;
}
判断这个数是不是水仙花数java打印水仙花数代码,求每一位数上的数的立方和是否为原数字本身即可。
Java是一门面向对象编程语言,不仅吸收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。
Q5: 用java打印出所有的“水仙花数”。所谓的“水仙花数”是指一个三位数,其各位数字立方和等于该数本身
public static void main(final String[] args) {
System.out.println("所有的水仙花数如下:");
int x; // 百分位
int y; // 十位
int z; // 个位
for (int i = 100; i 1000; i++) {
x = i / 100;
y = (i- x * 100) / 10;
z = i % 10;
if (i == (cubic(x) + cubic(y) + cubic(z))) {
System.out.println(String.format("找到水仙花数:%d", i));
}
}
}
private static int cubic(final int n) {
return (n * n * n);
}
所有的水仙花数如下:
找到水仙花数:153
找到水仙花数:370
找到水仙花数:371
找到水仙花数:407
关于java打印水仙花数代码和用java打印出所有的水仙花数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







