public class ShuiXianShu
成都創(chuàng)新互聯(lián)是專(zhuān)業(yè)的陽(yáng)泉網(wǎng)站建設(shè)公司,陽(yáng)泉接單;提供網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行陽(yáng)泉網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
{
/**
* 題目:打印出100-999之間所有的"水仙花數(shù)",所謂"水仙花數(shù)"是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。
* 例如:153是一個(gè)"水仙花數(shù)",因?yàn)?53=1的三次方+5的三次方+3的三次方。
* 1.程序分析:利用for循環(huán)控制100-999個(gè)數(shù),每個(gè)數(shù)分解出個(gè)位,十位,百位。*
*/
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);
}
}
}
}
這個(gè)是我以前做過(guò)的,樓主可以參考
所謂?"水仙花數(shù)?"是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如:153是一個(gè)?"水仙花數(shù)?",因?yàn)?53=1的三次方+5的三次方+3的三次方。代碼如下
public?class?Shuixianhua?{
/**
?*?判斷數(shù)字是否是水仙花數(shù)
?*?@Title:?shuixianhua?
?*?@param:@param?x
?*?@param:@return
?*?@return:boolean
?*?@Description:
?*?@date?2017年11月2日?下午3:03:10
?*?@throws
?*/
?public?boolean?shuixianhua(int?x)??
{??
???int?i=0,j=0,k=0;??
???i=x?/?100;??
???j=(x?%?100)?/10;??
???k=x?%?10;??
???if(x==i*i*i+j*j*j+k*k*k)??
???return?true;??
???else??
???return?false;??
?
}
?
?public?static?void?main(String[]?args)?{
?//存放所有水仙花數(shù)的集合
ListInteger?sxhList=new?ArrayListInteger();
Shuixianhua?sxh=new?Shuixianhua();
for(int?i=1;i=1000;i++){
//判斷是否是水仙花數(shù),是則放入集合
if(sxh.shuixianhua(i)){
sxhList.add(i);
}
}
//打印所有水仙花數(shù)
System.out.println(sxhList.toString());
}
}
水仙花數(shù)是指一個(gè) n 位數(shù) ( n≥3 ),它的每個(gè)位上的數(shù)字的 n 次冪之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)
什么是水仙花數(shù)
水仙花數(shù)只是自?xún)鐢?shù)的一種,嚴(yán)格來(lái)說(shuō)三位數(shù)的3次冪數(shù)才成為水仙花數(shù)。
附:其他位數(shù)的自?xún)鐢?shù)名字
一位自?xún)鐢?shù):獨(dú)身數(shù)
兩位自?xún)鐢?shù):沒(méi)有
三位自?xún)鐢?shù):水仙花數(shù)
四位自?xún)鐢?shù):四葉玫瑰數(shù)
五位自?xún)鐢?shù):五角星數(shù)
六位自?xún)鐢?shù):六合數(shù)
七位自?xún)鐢?shù):北斗七星數(shù)
八位自?xún)鐢?shù):八仙數(shù)
九位自?xún)鐢?shù):九九重陽(yáng)數(shù)
十位自?xún)鐢?shù):十全十美數(shù)
統(tǒng)計(jì)水仙花數(shù)的個(gè)數(shù)的話(huà)可以使用一個(gè)變量來(lái)計(jì)數(shù),循環(huán)判斷如果這個(gè)數(shù)是水仙花數(shù)的話(huà),就把這個(gè)數(shù)加1。
具體示例代碼如下:
publicclassDemo1{
publicstaticvoidmain(String[]args){
System.out.println(\\\"100~999之間的水仙花數(shù)是:\\\");
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(\\\"個(gè)數(shù):\\\"+count);
}
}
接下來(lái)介紹下什么是水仙花數(shù):
水仙花數(shù)是指一個(gè)n位數(shù)(n≥3),它的每個(gè)位上的數(shù)字的n次冪之和等于它本身。
//水仙花數(shù)是指:一個(gè)三位數(shù),其各位數(shù)字的立方和等于該數(shù)本身
//例如:153就是一個(gè)水仙花數(shù)。
//153?=?1*1*1?+?5*5*5?+?3*3*3?=?1?+?125?+?27?=?153
public?class?ShuiXianHuaShu?{
public?static?void?main(String[]?args)?{
int?count?=?0;
for?(int?i?=?100;?i??1000;?i++)?{
int?ge?=?i?%?10;
int?shi?=?i?/?10?%?10;
int?bai?=?i?/?100?%?10;
if?(i?==?ge?*?ge?*?ge?+?shi?*?shi?*?shi?+?bai?*?bai?*?bai)?{
System.out.println(i?+?"是水仙花數(shù)");
count++;
}
}
System.out.println("一共有"?+?count?+?"個(gè)水仙花數(shù)");
}
}
求水仙花數(shù)的Java程序如下
public?class?E?{
public?static?void?main(String[]?args)?{
System.out.println("水仙花數(shù)");
for(int?i=100;i1000;i++){
int?a=i/100;
int?b=i/10%10;
int?c=i%10;
if(i==a*a*a+b*b*b+c*c*c){
System.out.print(i+"?");
}
}
}
}
運(yùn)行結(jié)果
水仙花數(shù)
153 370 371 407