标题:java自学之初级篇:求老师知道一下作业代码是否可改进
只看楼主
jscs_he
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-3-23
结帖率:0
 问题点数:0 回复次数:2 
java自学之初级篇:求老师知道一下作业代码是否可改进
import java.util.Scanner;
class zuoye3
{    /*
        已知:faibonacci(斐波那契)数列的以前几个数分辨是0,1,1,2,3,5.8.13.21.....
        从第三项开始每一项都等于前两项的和
        输入一个数n 编程求出此数列的前n项的和.
        思路:
            从第三项开始每一项都等于前面两项的和
            假设 用循环定义        n=3  sum=a+b   
                                n=4  此时的a应该是b b应该是sum
                                也是 a=b b=sum 的循环  
            
                                
    */
    public static void main(String[] args)
    {
        Scanner s = new Scanner(System.in);
        System.out.print("请输入一个数字:");
        int a =0;
        int b =1;
        int sum = 0;

        int n = s.nextInt();
            for (int i = 2;i<n ;i++ )//注意:因为是从第三项开始的,所以当i=2的时候 a才等于0 b才等于1;
            {
                sum= a + b;
                a = b; //此时的a 等于 n-2项
                b = sum; //此时的c 等于 n-1项
            }
            System.out.println(sum);
    }
}
搜索更多相关主题的帖子: import java 
2016-03-23 14:35
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:0 
要求前n项的和,不是第n项的值:

import java.util.Scanner;
public class zuoye3
 {    /*
         已知:faibonacci(斐波那契)数列的以前几个数分辨是0,1,1,2,3,5.8.13.21.....
         从第三项开始每一项都等于前两项的和
        输入一个数n 编程求出此数列的前n项的和.
         思路:
             从第三项开始每一项都等于前面两项的和
            假设 用循环定义        n=3  sum=a+b   
                                 n=4  此时的a应该是b b应该是sum
                                 也是 a=b b=sum 的循环  
            
                                 
     */
     public static void main(String[] args)
     {
         Scanner s = new Scanner(System.in);
         System.out.print("请输入一个数字:");
         int a =0;
         int b =1;
         int sum = 0;
         int counts = 0;

         int n = s.nextInt();
             for (int i = 2;i<=n ;i++ )//注意:因为是从第三项开始的,所以当i=2的时候 a才等于0 b才等于1;
             {
                 sum = (a + b);
                 counts += b;
                 a = b; //此时的a 等于 n-2项
                 b = sum; //此时的c 等于 n-1项                 
            }
             System.out.println(counts);
     }
 }
2016-03-23 14:58
jscs_he
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-3-23
得分:0 
回复 2楼 grmmylbs
感觉比我写的复杂了!!!
2016-03-23 15:02



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-462819-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024114 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved