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. javascript change array length methods

    javascript change array length methods Array 改变数组长度的方法 push, pop shift, unshift, splice, fill, 不改变数组 ...

  2. Node.js Learning Paths

    Node.js Learning Paths Node.js in Action Node.js Expert situations / scenario Restful API OAuth 2.0 ...

  3. H5 APP 页面移动端适配方案

    H5 APP 页面移动端适配方案 https://segmentfault.com/a/1190000011586301 https://juejin.im/post/5cbdee71f265da03 ...

  4. taro defaultProps

    taro defaultProps https://nervjs.github.io/taro/docs/best-practice.html#给组件设置-defaultprops import Ta ...

  5. 「NGK每日快讯」2021.1.15日NGK公链第73期官方快讯!

  6. webpack理解

    打包工具 可以将多个静态文件打包成一个静态文件例如将1.js.2.js.3.css打包成h.js一个静态文件 这样做的好处是:可以减少页面的请求次数 以往是请求多个静态页面,使用webpack后会减少 ...

  7. FTPClient类的API

    org.apache.commons.NET.ftp Class FTPClient类FTPClient java.lang.Object java.lang.Object继承 org.apache. ...

  8. 基于ros2 dashing的建图导航探索

    基于ros2 dashing的建图导航探索 1. 环境准备 安装ros2 dashing, 参考链接: https://index.ros.org/doc/ros2/Installation/Dash ...

  9. 更换 grub 主题

    默认的 grub 界面比较简陋 然后突然有想法了,想换个主题 具体操作 1.下载 grub 主题包 去这个地址下载主题(应该是这个地址): https://www.gnome-look.org/bro ...

  10. linux开启FTP服务

    目录 打开FTP服务 客户端链接时会出现的问题 打开FTP服务 先ping,查看网络是否联通 打开ssh服务 查看一些服务的状态 #查看ssh状态 service sshd status #防火墙的状 ...