笔记|斐波那契数列|相邻两项相除|float保留固定位数

1. 斐波那契数列指的是这样一个数列  1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

数列第一项和第二项是1, 从第三项开始,每一项都等于前两项之和。

代码如下(一下方法为求取第i位 斐波那契数列指)

public static int getFs(int i) {
		int j = 0;
		switch (i) {
		case 0:
			j = 0;
			break;
		case 2:
			j = 1;
			break;
case 1:
	j = 1;
	break;
	case 2:
	j = 1;
	break;
	default:
	int i1 = 1;int i2 = 1;int i3 = 0;
	for (int k = 3; k <= i; k++) {
		i3 = i1 + i2;i1 = i2;i2 = i3;}j = i3;break;}return j;
		}

2 相邻两数相除(取至小数点后三位)

f=(float)getFs(g)/(float)getFs(g+1);  //相邻两数相除
(float)(Math.round(f*1000))/1000	//取小数点后3位



  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 斐波那契数列两项之和可以通过以下方法实现: 1. 定义一个变量sum,初始值为。 2. 定义两个变量a和b,分别表示斐波那契数列中的两项,初始值分别为和1。 3. 使用循环语句,每次将a和b相加,并将结果赋值给sum。 4. 将a的值赋给b,将sum的值赋给a。 5. 重复执行步骤3和4,直到达到指定的项数。 6. 输出sum的值,即为斐波那契数列两项之和。 例如,输出斐波那契数列10项的两项之和: ``` sum = a = b = 1 for i in range(10): temp = a + b sum += temp a = b b = temp print(sum) ``` 输出结果为:231。 ### 回答2: 斐波那契数列是指从1开始,第n个数是它面两个数之和,即f(n) = f(n-1) + f(n-2)。我们可以用递归函数或循环来实现输出斐波那契数列两项之和的功能。 首先,我们来看递归函数的实现。 递归函数就是在函数内部调用自身来实现程序功能的一种函数。用递归函数输出斐波那契数列两项之和,需要注意的是,由于斐波那契数列是从1开始计数的,我们需要给递归函数提供两个初始的值f(1)和f(2),然后从第三项开始递归计算。代码如下: ```python def fib(n): if n == 1: return 1 elif n == 2: return 1 else: return fib(n-1) + fib(n-2) n = int(input("请输入斐波那契数列中的项数:")) sum = fib(n) + fib(n-1) print("第", n, "项和第", n-1, "项的和为:", sum) ``` 以上代码中,fib()函数接收一个参数n,如果n等于1或2,则直接返回1;否则,递归地调用fib()函数计算f(n-1)和f(n-2)的和。在主程序中,我们输入要求的斐波那契数列的项数n,然后计算第n项和第n-1项的和,并输出到屏幕上。 接下来,我们来看用循环实现输出斐波那契数列两项之和的方法。 用循环实现输出斐波那契数列两项之和,需要先用列表存储斐波那契数列中的每一项,然后计算相邻两项之和。代码如下: ```python n = int(input("请输入斐波那契数列中的项数:")) fib_list = [1, 1] for i in range(2, n): fib_list.append(fib_list[i-1] + fib_list[i-2]) sum = fib_list[-1] + fib_list[-2] print("第", n, "项和第", n-1, "项的和为:", sum) ``` 以上代码中,我们输入要求的斐波那契数列的项数n,然后创建一个列表fib_list,用于存储斐波那契数列中的每一项。从第3项开始,我们使用循环计算出斐波那契数列中的每一项,并将其追加到fib_list中。在计算完斐波那契数列中的所有项之后,我们来计算第n项和第n-1项的和,并输出到屏幕上。 以上两种方法都可以用来输出斐波那契数列两项之和,其中递归函数较为简洁但可能存在效率问题,而循环方法则更为可控但需要更多的代码来实现。具体方法选择可以根据实际需求和使用场景来进行选择。 ### 回答3: Fibonacci数列是一个经典的数学问题,这个数列的规律是从第三项开始,每一项均等于两项之和,即F(n) = F(n-1) + F(n-2),其中F(0)=0,F(1)=1。为了输出Fibonacci数列两项之和,我们需要先找到对应的两项。 假设我们要输出第n项和第m项之和,我们可以使用递推公式F(n) = F(n-1) + F(n-2)和F(m) = F(m-1) + F(m-2)来计算这两个数的值。具体的,我们可以使用循环的方式逐项计算Fibonacci数列每一项,直到达到我们要求的第n项和第m项值。 在进行循环计算过程中,我们还需要定义一个变量来存储第n项和第m项的和,每次计算出对应两个数的值之后,将其相加并存储到这个变量中。 最后,我们输出这个变量的值即可得到Fibonacci数列中第n项和第m项的和。具体实现细节可参考下方的代码示意: ```python def sum_of_fibonacci(n, m): fib = [0, 1] for i in range(2, max(n, m) + 1): fib.append(fib[i-1] + fib[i-2]) return fib[n] + fib[m] # 示例: print(sum_of_fibonacci(3, 5)) # 输出:8 ``` 在上述代码中,我们先定义了一个包含两项F(0)=0,F(1)=1的Fibonacci数列。然后使用循环的方式计算出第n项和第m项的值,将它们相加并返回结果。最后我们用(3, 5)作为示例输入,输出结果为8。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值