水仙花数java实现,Java实现水仙花数

本文目录一览:

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求水仙花数

分析:水仙花数是指:一个三位数,其各位数字立方和等于该数本身。例如: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.很明显,就能得到个位数。

2:

intb = x/100;

int s = x/100%10;

int g = x%10;

求立方的方法:

1,x = Baiwei*Baiwei*Baiwei+ShiWei*ShiWei*ShiWei+GeWei*GeWei*GeWei

2,Java提供求n次方的方法:java.lang.Math.pow(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-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+”个”); //输出水仙花数的总数

}

}

第二种:

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==Math.pow(b, 3) + Math.pow(s, 3) + Math.pow(g, 3)){

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

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

}

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

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

}

}

用Java写个关于“水仙花数”的程序?

按一下代码执行:

public class woo {

public static void main(String args[]) {

System.out.println(“100-1000中的水仙花数有:”);

for(int i=100;i1000;i++){

int single  = i%10;

int ten = i/10%10;

int hundred = i/10/10%10;

//水仙花数判断要求

if(i == (single*single*single+ten*ten*ten+hundred*hundred*hundred)){

System.out.println(i);

}

}

}

}

扩展资料:

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

一位自幂数:独身数

两位自幂数:没有

三位自幂数:水仙花数

四位自幂数:四叶玫瑰数

五位自幂数:五角星数

六位自幂数:六合数

七位自幂数:北斗七星数

八位自幂数:八仙数

九位自幂数:九九重阳数

十位自幂数:十全十美数

参考资料:

水仙花数——百度百科

原创文章,作者:简单一点,如若转载,请注明出处:https://www.506064.com/n/128226.html

(0)
简单一点的头像简单一点
上一篇 2024-10-03
下一篇 2024-10-03

相关推荐

  • 如何解决MacClashX无法使用的问题

    一、软件简介 MacClashX是一款集代理、规则、分流、Adblock等功能于一体的Mac网络代理客户端。此款软件可以方便用户快速地配置和管理多个代理服务、规则以及Adblock…

    编程 2024-10-04
  • Mobaxterm设置右键粘贴为中心

    一、为什么要设置右键粘贴为中心 在使用Mobaxterm的时候,我们会发现默认的粘贴操作需要按下Ctrl+Shift+V,十分不便。因此,我们希望能够将右键粘贴设置为中心,方便我们…

    编程 2024-10-04
  • R语言机器学习详解

    一、环境准备 在进行R语言机器学习前,必须先配置好开发环境。 首先,需要安装R语言编程环境及相关依赖。可以在官网(https://www.r-project.org/)下载最新版本…

    编程 2024-10-14
  • java搜索引擎框架介绍(基于java的搜索引擎的设计与实现)

    本文目录一览: 1、学习Java应该了解的大数据和框架? 2、java有什么常用开源的框架? 3、北大青鸟java培训:学习Java应该了解的大数据和框架? 4、作为一个JAVA程…

    编程 2024-10-03
  • php历程,php时间

    本文目录一览: 1、王学集的创业历程 2、php是什么? 3、php怎么用 王学集的创业历程 图书馆花了半个小时学会PHP 王学集 的高考成绩并不理想,因为喜欢玩游戏,又非常喜欢倒…

    编程 2024-10-04
  • php继承与实现的比较(php与其他语言的比较)

    1、关于PHP继承抽象类 和 继承普通类 有什么区别 2、thinkphp5 implements和extends的区别 3、PHP继承机制和JS的继承机制有什么不同? 4、JAV…

    编程 2024-10-03
  • Python的write函数:实现文件输出操作

    Python是一种优秀的编程语言,被广泛用于数据科学、Web开发、自动化、机器学习等多个领域。在Python中,写入文件是一种非常常见的操作,而Python的write函数则是实现…

    编程 2024-10-03
  • 掌握Python Range范围,轻松编程

    Python语言是一种高级编程语言,它诞生于上世纪90年代初期,当时由荷兰人Guido van Rossum编写,它的独特之处在于语言简洁易懂,适合初学者入门,并且终身学习都不会过…

    编程 2024-10-04
  • Python append方法:在列表末尾添加元素

    一、Python append方法的介绍 在Python中,列表是一种非常常用的数据类型,它可以存储任意数量的任意类型的元素。Python提供了很多方法用于操作列表,其中最常用的方…

    编程 2024-10-04
  • 分析ORA-22992错误

    ORA-22992错误是Oracle数据库中的一个常见错误,通常发生在使用LOB或LONG类型的列时,表示无法操作该列或类型,因为它们正在被锁定。 一、了解ORA-22992的含义…

    编程 2024-10-03

发表回复

登录后才能评论