本文目錄一覽:
- 1、java求水仙花數,怎麼樣統計水仙花數的個數啊?
- 2、用Java寫個關於「水仙花數」的程序?
- 3、Java 編程找出所有的水仙花數(水仙花數)。
- 4、java水仙花數?
- 5、java中求解水仙花數的演算法思想是什麼?
java求水仙花數,怎麼樣統計水仙花數的個數啊?
統計水仙花數的個數的話可以使用一個變數來計數,循環判斷如果這個數是水仙花數的話,就把這個數加1。
具體示例代碼如下:
publicclassDemo1{
publicstaticvoidmain(String[]args){
System.out.println(\\\”100~999之間的水仙花數是:\\\”);
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(\\\”個數:\\\”+count);
}
}
接下來介紹下什麼是水仙花數:
水仙花數是指一個n位數(n≥3),它的每個位上的數字的n次冪之和等於它本身。
用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次冪數才稱為水仙花數。
一位自冪數:獨身數
兩位自冪數:沒有
三位自冪數:水仙花數
四位自冪數:四葉玫瑰數
五位自冪數:五角星數
六位自冪數:六合數
七位自冪數:北斗七星數
八位自冪數:八仙數
九位自冪數:九九重陽數
十位自冪數:十全十美數
參考資料:
水仙花數——百度百科
Java 編程找出所有的水仙花數(水仙花數)。
代碼如下:
package com.vo;
public class Shuixianhua {
public static void main(String[] args) {
int a=0;
int b=0;
int c=0;
for(int i=100;i999;i++)
{
a=i/100;
b=i/10%10;
c=i%10;
if(i==(a*a*a+b*b*b+c*c*c))
System.out.println(i);
}
}
}
首先水仙花數」是指一個三位數,其各位數字立方和等於該數,
如:153是一個「水仙花數」,因為1的三次方+5的三次方+3的三次方等於153
解此題的關鍵是怎能樣從一個三位數中分離百位數、十位數、個位數。可以這樣做,設該三位數以i代表,由a,b,c三個數字組成。
(1)百位數字a:a=int(i/100).
(2)十位數字b:b=int((i-100*a)/10)
(3)個位數字c:c=i-int(i/10)*10.
然後在根據上述代碼可得
擴展資料:
水仙花數(Narcissistic number)也被稱為超完全數字不變數(pluperfect digital invariant, PPDI)、自戀數、自冪數、阿姆斯壯數或阿姆斯特朗數(Armstrong number),水仙花數是指一個 3 位數,它的每個位上的數字的 3次冪之和等於它本身(例如:1^3 + 5^3+ 3^3 = 153)。
參考資料:水仙花數百度百科
java水仙花數?
100以內是沒有水仙花數的!
水仙花數定義:水仙花數是指一個
n
位數
(
n≥3
),它的每個位上的數字的
n
次冪之和等於它本身。(例如:1^3
+
5^3
+
3^3
=
153)
//100-999之間的數
public
class
Demo
{
public
static
void
main(String
[]
a){
for
(int
i=101;i999;i++){
String
s=new
Integer(i).toString();
int
temp=0;
int
n=s.length();
for
(int
j=0;jn;j++){
temp+=Math.pow(Character.digit(s.charAt(j),
10),
n);
}
if(temp==i){
System.out.println(i);
}
}
}
}
//不太清楚你所說的100間的斐波那契數是什麼概念
是100以內的斐波那契數
還是100步以內的斐波那契數,下面給你寫的程序裡面n是步數
public
class
Demo
{
public
static
void
main(String[]
args)
{
int
n
=
20;
fib(n);
}
public
static
void
fib(int
n)
{
long
f1
=
1,
f2
=
1,
fn
=
0;
if
(n
==
1)
System.out.print(f1);
if
(n
==
2)
System.out.print(f2);
else
{
System.out.print(f1+”
“);
System.out.print(f2+”
“);
for
(int
i
=
2;
i
n;
i++)
{
fn
=
f1
+
f2;
f1
=
f2;
f2
=
fn;
System.out.print(fn+”
“);
}
}
}
}
java中求解水仙花數的演算法思想是什麼?
水仙花數是指一個
n
位數
(
n≥3
),它的每個位上的數字的
n
次冪之和等於它本身。
從上面的定義可以看出,只要將給出的數字各個位數的數字分解出來,然後把個數字的3次方相加與原數相比是否相等即可判斷出是否為水仙花數,給你一段源碼,是求100~1000內的水仙花數,有注釋,希望對你有幫助:
public
class
Wflower
{
public
static
void
main(String[]
args)
{
int
a=0,b=0,c=0;
System.out.println(“水仙花數是:”);
for
(int
i
=
100;
i
1000;
i++)
//遍歷所有3位數
{
a
=
i/100;
//獲取3位數中百位的數
b=i%100/10;
//獲取3位數中十位的數
c=i%100%10;
//獲取3位數中個位的數
a
=
a
*
a
*
a;
//計算第一位數的立方
b
=
b
*
b
*
b;
//計算第二位數的立方
c
=
c
*
c
*
c;
//計算第3位數的立方
if
((a
+
b
+
c)
==
i)
//如果符合水仙花數
System.out.print(“
“+i);
}
}
}
原創文章,作者:OHTX,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/139736.html