写一个斐波那契数列
时间: 2023-08-04 22:18:12 浏览: 42
斐波那契数列是指:从第三项开始,每一项都等于前两项之和。即:
F(0) = 0, F(1) = 1
F(n) = F(n-1) + F(n-2) (n>=2)
以下是 Java 代码实现:
```
public class Fibonacci {
public static void main(String[] args) {
int n = 10;
for(int i = 0; i < n; i++) {
System.out.print(fibonacci(i) + " ");
}
}
public static int fibonacci(int n) {
if(n == 0) {
return 0;
}
if(n == 1) {
return 1;
}
return fibonacci(n-1) + fibonacci(n-2);
}
}
```
上述代码中,先定义了一个 fibonacci 方法用来计算斐波那契数列中第 n 项的值。当 n 等于 0 或 1 时,直接返回 0 或 1。当 n 大于 1 时,递归调用 fibonacci(n-1) 和 fibonacci(n-2) 方法得到前两项的和。最后,通过 for 循环遍历输出前 10 项的值。
相关问题
用Java写一个斐波那契数列
### 回答1:
用 Java 写斐波那契数列的代码如下:
public class Fibonacci {
public static void main(String[] args) {
int n1 = 1, n2 = 1, n3;
System.out.print(n1 + " " + n2 + " ");
for (int i = 3; i <= 10; i++) {
n3 = n1 + n2;
System.out.print(n3 + " ");
n1 = n2;
n2 = n3;
}
}
}
### 回答2:
斐波那契数列是指每个数字都是前两个数字之和的数列。利用Java语言可以很方便地实现斐波那契数列的生成。下面是使用Java编写的斐波那契数列的代码:
```java
public class Fibonacci {
public static void main(String[] args) {
int limit = 10; // 生成斐波那契数列的个数
int[] fibonacci = new int[limit];
// 前两个数字分别为0和1
fibonacci[0] = 0;
fibonacci[1] = 1;
// 生成斐波那契数列的其他数字
for (int i = 2; i < limit; i++) {
fibonacci[i] = fibonacci[i - 1] + fibonacci[i - 2];
}
// 输出斐波那契数列
for (int i = 0; i < limit; i++) {
System.out.print(fibonacci[i] + " ");
}
}
}
```
以上代码中,我们先定义了一个整型数组来存储斐波那契数列,初始化了斐波那契数列的前两个数字为0和1。然后,通过一个循环来逐步生成斐波那契数列的其他数字,直到达到指定的个数。最后,我们通过循环输出生成的斐波那契数列。
运行以上代码将会产生斐波那契数列的前10个数字,即0 1 1 2 3 5 8 13 21 34。
### 回答3:
斐波那契数列是指从第3个数开始,每个数都是前两个数的和。具体代码如下:
```java
public class Fibonacci {
public static void main(String[] args) {
int n = 10; // 要输出斐波那契数列的个数
int[] fibonacci = new int[n];
// 初始化前两个数
fibonacci[0] = 0;
fibonacci[1] = 1;
// 计算并输出斐波那契数列
for (int i = 2; i < n; i++) {
fibonacci[i] = fibonacci[i - 1] + fibonacci[i - 2];
}
// 输出结果
for (int num : fibonacci) {
System.out.print(num + " ");
}
}
}
```
以上代码实现了用Java写一个斐波那契数列,并输出该数列。运行结果为:0 1 1 2 3 5 8 13 21 34。其中,0和1为数列的初始两个数,后续的数字则是前两个数字的和。+
用python写一个斐波那契数列
### 回答1:
用python写一个斐波那契数列的程序如下:
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(10))
### 回答2:
斐波那契数列是一个由前两个数相加得到的数列,开始的两个数一般是0和1。从第三项开始,每一项都是前两项的和。用Python编写一个斐波那契数列的函数如下:
```python
def fibonacci(n):
if n <= 0: # 输入小于等于0的情况,返回空列表
return []
elif n == 1: # 输入为1的情况,返回[0]
return [0]
elif n == 2: # 输入为2的情况,返回[0, 1]
return [0, 1]
else: # 输入大于2的情况
fib_list = [0, 1] # 初始化前两项
for i in range(2, n):
fib_list.append(fib_list[i-1] + fib_list[i-2]) # 计算并添加下一项
return fib_list
n = int(input("请输入要计算的项数:"))
fibonacci_list = fibonacci(n)
print(f"斐波那契数列的前{n}项为:{fibonacci_list}")
```
通过上述代码,我们可以根据用户输入的项数,计算并输出对应的斐波那契数列。例如,如果用户输入的项数为6,结果将会打印出前6项的斐波那契数列:[0, 1, 1, 2, 3, 5]。
### 回答3:
斐波那契数列是一个经典的数学问题,可以使用Python编程语言来实现。下面是一个使用递归方式编写的斐波那契数列程序:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
# 测试
n = int(input("请输入要生成的斐波那契数列的长度:"))
fib_list = []
for i in range(n):
fib_list.append(fibonacci(i))
print(f"斐波那契数列的前{n}个数为:{fib_list}")
```
这个程序通过递归的方式计算斐波那契数列的第n项。首先定义了一个名为`fibonacci`的函数,该函数以`n`为参数,如果`n`小于等于1,则返回`n`。否则,递归调用`fibonacci`函数,计算`n-1`和`n-2`两项的和作为结果返回。
在主程序中,首先要求用户输入要生成的斐波那契数列的长度。然后通过循环调用`fibonacci`函数,生成斐波那契数列的前n项,并依次添加到一个列表中。最后,打印出斐波那契数列的前n个数。