入门经典编程题-数列前n项和

网友投稿 690 2022-10-01

入门经典编程题-数列前n项和

入门经典编程题-数列前n项和

题目

有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前n项之和。

分析

分子序列和分母序列分别为初始值不同的斐波那契数列

Java实现

实现1

递归,时间复杂度高

public static void example06(){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); double sum = 0; sum += 2/1 ; if (n == 1) { System.out.println(sum); return; } sum += (double)3/2; if (n == 2) { System.out.println(sum); return; } for (int i = 3; i <= n; i++) { int a = number(2,3,i-2); int b = number(1,2,i-2); sum += (double)a/b; } System.out.println(sum); }

public static int number(int a1,int a2,int n){ if (n == 1) return a1+a2; return number(a2,a1+a2,--n); }

实现2

求分子,分母

public static void example06_2(){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int a = 2, b = 1 ; double sum = 0; for(int i = 0;i < n ;i++) { sum += (double) a/b ; int temp = a; a += b; b = temp; } System.out.println(sum); }

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:公众号的作用是什么?(公众号有什么用处呢)
下一篇:学习如何用pixi.js开发微信小游戏(pixijs 微信游戏)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~