网站建设资讯

NEWS

网站建设资讯

斐波那契递归代码java 斐波那契递归代码c语言

java语言解决斐波那契数列问题

public

专注于为中小企业提供成都做网站、成都网站建设、成都外贸网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业余杭免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

class

zuoye{

public

static

void

main(String[]

args){

int

num1=1,num2=1;//设定前两位数初始值

int

num=0;

//把变量mun赋值为0是什么意思?在后面有什么用?

答:

num赋值初始化为0,

不然为null.

System.out.println(num1+"\\t"+num2+"\\t"+(num1+num2));

//显示输出数列的前三位

这个上面的打印的结果和后面循环的结果应该是分开的,也就是前面打印

1

1

2

然后换行,然后再通过循环打印10个数字.

接下来我们看循环部分.

斐波那契数列公式是

F1=1

(n=1)

F2=1

(n=2)

Fn=F(n-1)+F(n-2)

(n=3)

所以,

for(int

i=1;i=10;i++){

//for循环

int

num3=num+num2;

//num+num2

??num加num2干什么?

答:num是个中间变量,

用来传值,

赋给num的值永远是F(n-1)

num2=num;

//为什么又把num赋值给num2?

答:

赋给num2的值永远是F(n-2).

这里因为num的值在上一个循环里为F(n-1),到下一个循环应该是F(n-2).所以赋给num2.

num=num3;

//

num3再赋给num?

答:

因为赋给num的值永远是F(n-1),

这里因为num3的值到下一个循环应该就是F(n-1).所以赋给num.

System.out.print("\\t"+num3);

if(i%5==0){

//i能被5整除.为什么要设定一个这样的判断条件?

答:

这里是每五个数打印一个换行符.

System.out.println();

//输出空的是什么意思?

答:

这里是打印一个换行符

}

}

}

}

java用递归编程求斐波那契数列第n项

public class Fibonacci {

public static void main(String args[]){

int n,fn;//n为第n项,fn为第n项的值

java.util.Scanner s = new Scanner(System.in);

n=s.nextInt();

fn=function(n);

System.out.println("斐波那契数列第"+n+"项为:"+fn);

}

public static int function(int n){

if(n==1 || n==2) return 1;

return function(n-1)+function(n-2);

}

}

希望能帮到你,其实和c语言是一样一样的。。

java判断一个数是否斐波那契

斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n=2,n∈N*)。

以下是Java代码实现(递归与递推两种方式):

import java.util.Scanner;

public class Fibonacci {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println("Please input this fibonacci n:");

int n = scanner.nextInt(); // 假设输入为大于零的整数

System.out.println(fibonacci(6) + ":" + fibonacciNormal(6));

int sum = 0;

for(int i = 1; i = n; i++){

sum += fibonacci(i);

}

System.out.println(sum);

}

// 递归实现方式

public static int fibonacci(int n){

if(n = 2){

return 1;

}else{

return fibonacci(n-1) + fibonacci(n-2);

}

}

// 递推实现方式

public static int fibonacciNormal(int n){

if(n = 2){

return 1;

}

int n1 = 1, n2 = 1, sn = 0;

for(int i = 0; i  n - 2; i ++){

sn = n1 + n2;

n1 = n2;

n2 = sn;

}

return sn;

}

}

JAVA用递归方法实现斐波那契数列

public static long fib1(int n){

if(n==1){

return 1;

}elseif(n==2){

return 2;

}else{

return fib1(n-1)+fib1(n-2);

}

}


名称栏目:斐波那契递归代码java 斐波那契递归代码c语言
标题URL:http://cdweb.net/article/doosohe.html