① 斐波那契數列 java

//這里採用兩種方法實現該數列
//第一種方法:用遞歸調用相加,實現簡單,但效率極低
//第二種方法:比第一種略顯復雜,但效率高
//------------------------------------------------------------
import java.util.Scanner;

public class Fibonacci {
//方法1:遞歸方式
public static long getFibonacci1(long count){
if(count<=1){
return 1;
}
return getFibonacci1(count-1) + getFibonacci1(count-2);//遞歸調用
}

//方法2:非遞歸方式,復雜一點,但效率比方法1高
public static long getFibonacci2(long count){
if(count<=1){
return 1;
}
long temp = 0;
long prev = 1;
long next = 1;

for (long i = 2; i <=count; i++) {
temp = prev+next;
prev = next;
next = temp;
}
return temp;
}

public static void main(String[] args) {

System.out.println("請輸入你要列出的項數,以回車結束:");
//控制台輸入
Scanner s = new Scanner(System.in);
//輸入的項數
int inputNum = s.nextInt();

System.out.println("得出斐波那契數列前"+inputNum+"項如下:");
for (long i = 0; i < inputNum; i++) {
//方式1
//System.out.prlong(getFibonacci1(i)+" ");
//方式2
System.out.print(getFibonacci2(i)+" ");
}

}
}

② 如何用java語言輸出斐波那契數列

  • Java編程:三種方法實現斐波那契數列


其一方法:

publicclassDemo2{
//定義三個變數方法
publicstaticvoidmain(String[]args){
inta=1,b=1,c=0;
System.out.println("斐波那契數列前20項為:");
System.out.print(a+" "+b+" ");
//因為前面還有兩個、1所以i<=18
for(inti=1;i<=18;i++){
c=a+b;
a=b;
b=c;
System.out.print(c+" ");
if((i+2)%5==0)
System.out.println();
}
}

}
  • java編程:三種方法實現斐波那契數列


其二方法:

publicclassDemo3{
//定義數組方法
publicstaticvoidmain(String[]args){
intarr[]=newint[20];
arr[0]=arr[1]=1;
for(inti=2;i<arr.length;i++){
arr[i]=arr[i-1]+arr[i-2];
}
System.out.println("斐波那契數列的前20項如下所示:");
for(inti=0;i<arr.length;i++){
if(i%5==0)
System.out.println();
System.out.print(arr[i]+" ");
}
}

}
  • Java編程:三種方法實現斐波那契數列

其三方法:

publicclassDemo4{
//使用遞歸方法
privatestaticintgetFibo(inti){
if(i==1||i==2)
return1;
else
returngetFibo(i-1)+getFibo(i-2);
}

publicstaticvoidmain(String[]args){
System.out.println("斐波那契數列的前20項為:");
for(intj=1;j<=20;j++){
System.out.print(getFibo(j)+" ");
if(j%5==0)
System.out.println();
}
}

}

同一道題用各種不同的思路去思考解決,也是對知識綜合運用的鍛煉。

③ 求助JAVA編寫斐波那契數列

這么簡單?

public class Fibonaci{
public static void main(String[] args){
long[] fibonaci=new long[20];
fibonaci[0]=1;
fibonaci[1]=1;
for(int i=2;i<20;i++){
fibonaci[i]=fibonaci[i-2]+fibonaci[i-1];
}
for(long i:fibonaci){
System.out.println(i);
}
}
}

運行結果為:
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765

遞歸迭代的思想....

④ 用java編寫程序,輸出斐波那契數列的前10個數。

1
1
2
3
5
8
13
21
34
55
public
class
Fibonacci
{
public
static
void
main(String
args[])
{
int
i=1,j=1;
for(int
n=1;n<=5;n++)
{
System.out.print("
"+i+"
"+j);
i
=
(int)(i+j);
j
=
(int)(i+j);
}
System.out.println();
}
}
1
1
2
3
5
8
13
21
34
55
我給你大概解釋一下吧,這個循環一共循環5次,每次寫出斐波那契數回列中的2個數答,因此一共有10個數

⑤ 如何用java語言輸出斐波那契數列

|

具體代碼如下:

public class Test {

public int fib(int n)

{

if(n==1 || n==2)//當n=1或2時 返回1

{

return 1;

}

return fib(n-1)+fib(n-2);//返回前兩項的和內

}

public static void main(String[] args) {

Test t = new Test();

for (int i = 1; i <= 15; i++) {

System.out.printf ("fib(%d)=%d ",i,t.fib(i));

}

}

}

運行結容果:

fib(1)=1

fib(2)=1

fib(3)=2

fib(4)=3

fib(5)=5

fib(6)=8

fib(7)=13

fib(8)=21

fib(9)=34

fib(10)=55

fib(11)=89

fib(12)=144

fib(13)=233

fib(14)=377

fib(15)=610

⑥ java 斐波那契數列

publicclassFibonacci3{
//使用遞歸方法
privatestaticintgetFibo(inti){
if(i==1||i==2)
return1;
else
returngetFibo(i-1)+getFibo(i-2);}

publicstaticvoidmain(String[]args){
System.out.println("斐波那契數列的前20項為:");
for(intj=1;j<=20;j++){
System.out.print(getFibo(j)+" ");
if(j%5==0)
System.out.println();
}
}
}

⑦ Java計算斐波那契數列的前n項和

Java代碼:

publicclassMain{	
publicstaticvoidmain(String[]args){
System.out.println(sum(10));
}

publicstaticlongsum(intn){
if(n<1){
return0;
}
if(n==1){
return1;
}
if(n==2){
return2;
}

longf1=1,f2=1;
longsum=2;

for(inti=3;i<=n;i++){
f2=f1+f2;
f1=f2-f1;
sum+=f2;
}

returnsum;
}
}


運行測試:

143

⑧ 用JAVA表示斐波那契數列 急急急!!!!

publicclassFibonacci{

//能夠被顯示的最大項
privatestaticfinallongMAX_TERM_VALUE=10000;

publicvoidrun(){
longfibonacci_1=0L;
longfibonacci=1L;
System.out.println(fibonacci_1);
while(fibonacci<MAX_TERM_VALUE){
System.out.println(fibonacci);
longtemp=fibonacci_1+fibonacci;
fibonacci_1=fibonacci;
fibonacci=temp;
}
}

publicstaticvoidmain(String[]args){
newFibonacci().run();
}

}

⑨ 如何用java方法最優雅的實現斐波那契數列

其實所有的遞歸都可以用循環來寫,區別是有的程序用遞歸寫起來更加容易,能夠提高程序執行的效率。關關於斐波那契數列用遞歸會更加好。