上次已经为大家介绍过java基础算法题,FindNumber.java、TestDay.java和TestCompare.java的内容了。今天再来为大家介绍一些与之有关的知识,也就是java基础算法题,
TestAdd2.java和TestJieCheng.java,实例代码分享。一起来看看吧。
一、TestAdd2.java
题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
1.程序分析:请抓住分子与分母的变化规律。代码展示如下:
package cn.edu.hit; /** * 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。 1.程序分析:请抓住分子与分母的变化规律。 * * @author tonylp */ public class testAdd2 { public static void main(String[] args) { int[] a = new int[20]; int[] b = new int[20]; double sum = 0.0; a[0] = 2; a[1] = 3; b[0] = 1; b[1] = 2; for (int i = 2; i < 20; i++) { a[i] = a[i - 1] + a[i - 2]; } for (int j = 2; j < 20; j++) { b[j] = b[j - 1] + b[j - 2]; } for (int i = 0; i < 20; i++) { sum += a[i] / b[i]; } System.out.println(sum); } }
二、TestJieCheng.java
题目:求1+2!+3!+...+20!的和
1.程序分析:此程序只是把累加变成了累乘。代码展示如下:
package cn.edu.hit; /** * 题目:求1+2!+3!+...+20!的和 * 1.程序分析:此程序只是把累加变成了累乘。 * @author tonylp */ public class testJieCheng { public static void main(String[] args) { int sum = 0; int data = 1; for (int i = 1; i <= 20; i++) { data = data * i; sum += data; } System.out.println(sum); } }
三、题目:利用递归方法求5!。
1.程序分析:递归公式:fn=fn_1*4!代码展示如下:
package cn.edu.hit; /** * 题目:利用递归方法求5! * 1.程序分析:递归公式:fn=fn_1*4! * @author tonylp */ public class testDiGuiJieCheng { public static void main(String[] args) { int sum = jieCheng(5); System.out.println(sum); } public static int jieCheng(int n) { if (n > 0) { return jieCheng(n - 1) * n; } else { return 1; } } }
以上就是关于java基础算法题, TestAdd2.java和TestJieCheng.java,实例代码分享的有关内容了,总的来说代码还是非常清楚的。如果你对java知识感兴趣,先要了解更多java经典例子,敬请关注奇Q工具网。
推荐阅读: