M斐波那契数列java代码实现
时间: 2023-12-04 12:22:19 浏览: 22
public static int fibonacci(int n) {
if(n <= 0) {
return 0;
} else if(n == 1) {
return 1;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
//测试代码
public static void main(String[] args) {
int n = 10;
for(int i = 1; i <= n; i++) {
System.out.print(fibonacci(i) + " ");
}
}
相关问题
M斐波那契数列c++代码实现
以下是C语言实现斐波那契数列的代码:
#include <stdio.h>
int fibonacci(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
int main() {
int n;
printf("请输入需要计算斐波那契数列的项数:\n");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
printf("%d ", fibonacci(i));
}
printf("\n");
return 0;
}
运行程序后,输入需要计算的斐波那契数列的项数,程序会输出对应的斐波那契数列。
斐波那契数列java代码
斐波那契数列是一个以1、1开始,后面每个数都等于它前两个数的和的数列。在Java中,可以通过递归或者使用for循环和数组的方式实现。
递归实现的代码如下:
```java
public static int fibonacci(int n) {
if (n == 1 || n == 2) {
return 1; // 基本情况
}
if (n > 2) {
return fibonacci(n - 1) + fibonacci(n - 2); // 递归调用
}
return -1; // 如果输入错误的n,一律返回-1
}
```
使用for循环和数组的方式实现的代码如下:
```java
public static long fibonacci(int n) {
if (n < 1) {
return -1;
}
if (n == 1 || n == 2) {
return 1;
}
long[] arr = new long[n];
arr[0] = arr[1] = 1; // 前两个数特殊处理
for (int i = 2; i < n; i++) {
arr[i] = arr[i - 2] + arr[i - 1]; }
return arr[n - 1];
}
```
以上是两种常见的实现方法,你可以根据需要选择其中的一种方法进行使用。