1 /*20 【程序 20 求前 20 项之和】
2 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前 20 项之和。
3 程序分析:请抓住分子与分母的变化规律。
4
5 */
6
7 /*分析
8 * 前一个数的分子就是后一个数的分母
9 * 无论分子分母,第三个的值都等于第一个加第二个
10 * 一 二 三 四 五。。。。
11 * 分子 2 3 5 8 13
12 * 分母 1 2 3 5 8 13
13 * ====================
14 * 1、利用找到的规律生成分子和分母分别存入两个不同的数组S[]和M[]
15 * 2、S[0]乘以M[1]存入S[0],再将S[1]和M[1]分别乘以M[0]并分别存入S[1]和M[1],再将S[0]乘以S[1]后存入S[0],则S[0]/M[1]就是钱两项和了
16 * 3、重复以上
17 * */
18
19 package homework;
20
21 public class _20 {
22
23 public static void main(String[] args) {
24 // TODO Auto-generated method stub
25 int s[]=new int[20]; //分子
26 int m[]=new int[20]; //分母
27 //生成分子分母
28 s[0]=2; s[1]=3;
29 m[0]=1; m[1]=2;
30 for (int i = 2; i < 20; i++) {
31 s[i]=s[i-1]+s[i-2];
32 m[i]=m[i-1]+m[i-2];
33 }
34 //==============测试分子分母的值==========================
35 // for (int i = 0; i < m.length; i++) {
36 // System.out.print(s[i]+"\t");
37 // }
38 // System.out.println();
39 // for (int i = 0; i < m.length; i++) {
40 // System.out.print(m[i]+"\t");
41 // }
42 //====================================================
43
44 // =====================long类型的范围都不够===查网上发现大家都是用的小数!!!!!!
45 //分别将每一项通分后相加,并存入s[0]和m[0]中
46 // for (int i = 1; i < m.length; i++) {
47 // s[0]=s[0]*m[i]; //分子1
48 // m[0]=m[0]*m[i]; //分母
49 // s[i]=s[i]*m[0]; //分子2
50 // s[0]=s[0]+s[i]; //分子1+分子2
51 // }
52 // System.out.println("该数列前20项之和为:"+s[0]+"/"+m[0]);
53 //
54 double x=(double)s[0]/(double)m[0];
55 for (int i = 1; i < m.length; i++) {
56 x=x+(double)s[i]/(double)m[i];
57
58 }
59 System.out.printf("%.2f",x);
60
61 }
62 }

Java例题_20 前20项之和!的更多相关文章

  1. JAVA 基础编程练习题20 【程序 20 求前 20 项之和】

    20 [程序 20 求前 20 项之和] 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前 20 项之和. 程序分析:请抓住分子与分母的变化规律. pac ...

  2. Java50道经典习题-程序20 求前20项之和

    题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和.分析:请抓住分子与分母的变化规律.三个连续分数之间的规律是:上两个分子之和等于第三个分数的分子 ...

  3. 【Python3练习题 019】 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

    后一个分数的分子=前一个分数的分子+分母,后一个分数的分母=前一个分数的分子,循环个20次就有结果.注意,假设分子为a,分母为b,虽然 a = a + b, 但此时a已经变成 a+b 了,所以再给b重 ...

  4. 码农谷 求前N项之和

    题目描述 有一分数序列:2/1.3/2.5/3.8/5.13/8.21/13.......求出这个数列的前N项之和,保留两位小数. 输入描述 N 输出描述 数列前N项和 样例 输入: 输出: 16.4 ...

  5. 打印Fibonacci数列方法汇总(前20项,每行5个)

    NO.1 迭代法 标签:通俗.易懂 思路:先打印第一项.再在循环里面执行fib=fib1+fib2,把fib2赋给fib1,把fib赋给fib2,每行5个可使用if函数(循环次数对5取余). #inc ...

  6. c - 2/1, 3/2, 5/3, 8/5, 13/8...前20项的和

    double pres(const int n) { ; //分子. ; //分母. ; double tmp; ; i <= n; i++) { sum += (numerator / den ...

  7. 数列的前N项之和

    时间限制: 1 Sec  内存限制: 128 MB 提交: 393  解决: 309 [提交][状态][讨论版] 题目描述 有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13.... ...

  8. 斐波那契数列第n项的值及前n项之和

    <script>// 算法题 // 题1:斐波那契数列:1.1.2.3.5.8.13.21...// // 一.斐波那契数列第n项的值 // // 方法一//递归的写法function a ...

  9. 求分数序列的前n项之和

    有一个分数序列 2/1,3/2,5/3,8/5,13/8,21/13,.... 求这个分数序列的前n项之和. 输入 测试数据有多组,其第一行为一个正整数k(0<k<=90),表示测试数据的 ...

随机推荐

  1. 24 Days Of JavaScript mas

    24 Days Of JavaScript mas Level up your JavaScript skills with a daily coding challenge from Decembe ...

  2. setTimeout 实现原理, 机制

    setTimeout 实现原理, 机制 JS 执行机制说起 浏览器(或者说 JS 引擎)执行 JS 的机制是基于事件循环. 由于 JS 是单线程,所以同一时间只能执行一个任务,其他任务就得排队,后续任 ...

  3. Base 64 & URL & blob & FileReader & createObjectURL

    Base 64 & URL & blob & FileReader & createObjectURL /** * let blob = item.getAsFile( ...

  4. Flutter 1.5

    Flutter 1.5 Flutter SDK https://flutter.dev/docs/get-started/install/windows Android SDK This instal ...

  5. css icons fontawesome-free

    官网 examples v4.7.0 cdnjs icons basic-use 安装 λ npm install --save @fortawesome/fontawesome-free fa前缀在 ...

  6. 美最大政媒《国会山报》罕见发文阐述BTC,华盛顿金融盛赞SPC

    比特币价格突破4万美元创下历史新高,美国最大政治媒体之一<国会山报>罕见的发表了文章对比特币进行阐明. 2021年已经过去一周,但比特币依然没有停下上涨的步伐.在刚刚过去2020年里,比特 ...

  7. MySQL 修改数据表

    修改数据表: 创建数据表 更改表明 更改字段数据类型 更改字段名称 更改字段名称和数据类型 为表添加新字段 将字段顺序改为第一位 将字段顺序改为另一个字段之后 删除字段 1 use test; 2 3 ...

  8. 一次"内存泄漏"引发的血案

    本文转载自一次"内存泄漏"引发的血案 导语 2017年末,手Q春节红包项目期间,为保障活动期间服务正常稳定,我对性能不佳的Ark Server进行了改造和重写.重编发布一段时间后, ...

  9. Nginx之Location匹配规则

    概述 经过多年发展,nginx凭借其优异的性能征服了互联网界,成为了各个互联网公司架构设计中不可获取的要素.Nginx是一门大学问,但是对于Web开发者来说,最重要的是需要能捋的清楚Nginx的请求路 ...

  10. JSON的stringify和parse方法

    一.JSON.parse() 方法用于将一个 JSON 字符串转换为对象. 以下代码为将字符串解析为对象,然后再赋值给对象 //页面初始化完成加载,option是传递的参数 onLoad: funct ...