八达网

标题: 刚学JAVA,写了个简单程序,运行不了;求高手修改 [打印本页]

作者: GY3849    时间: 2013-3-16 23:59
标题: 刚学JAVA,写了个简单程序,运行不了;求高手修改
aaa.rar (315 Bytes, 下载次数: 25)

题目要求:打印出以下数列:2 3 5 8 13 21 34 55 。。。。

基础很差,思路很模糊,写完了不能编。。。附上附件,求帮忙修改


public class aaa {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub

               
            int i=0;
                for(i=1;i<=100;i++)
                {
                        System.out.println(f(i));
                }
                       
                public static int f(int x)
                {
                        if(x==1)
                                return 2;
                        if(x==2)
                                return 3;
                        else
                                return f(x-1)+f(x-2);
                }
        }

}

作者: EZ企鹅    时间: 2013-3-17 00:01
LZ为什么这么执着要学编程?我见过很多人干这行,实际上不适合干这个,到一定年纪自己也没信心了就转行了...
作者: EZ企鹅    时间: 2013-3-17 00:02
LZ为什么这么执着要学编程?我见过很多人干这行,实际上不适合干这个,到一定年纪自己也没信心了就转行了...
作者: everrr    时间: 2013-3-17 00:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: wocnm    时间: 2013-3-17 00:06
初学编程不要用递归,理解不直接,哥给你一个求菲薄拉切数列的循环代码

int a=0;
int b=1;
for(int i=0;i<20;i++){

   int c=a+b;
   a=b;
   b=c;
   System.out.print(a+",");
}
作者: 国妓米兰    时间: 2013-3-17 00:07
真的想学cs别来8da问了

先去找书看吧
作者: OruA    时间: 2013-3-17 00:09
这么短,看都不想看
作者: wocnm    时间: 2013-3-17 00:11
要用递归先要搞清方法调用的原理,比如方法调用时会压栈,方法在归递时代码段是同一个空间,数据空间则不同,完成递归后通过栈记录沿调用路线返回。
这些对初学者都有点点难
作者: GY3849    时间: 2013-3-17 00:11
wocnm 发表于 2013-3-17 00:06
初学编程不要用递归,理解不直接,哥给你一个求菲薄拉切数列的循环代码

int a=0;

谢谢!!
作者: 国妓米兰    时间: 2013-3-17 00:12
非用java不可吗?

先学可以先用python掌握一些基本概念以后再去用java去做东西有感觉一些
作者: EZ企鹅    时间: 2013-3-17 00:14
java相当好学,只要逻辑清晰,根本不用求助别人,自学可以到很高的层次,各种资源非常多.
作者: 国妓米兰    时间: 2013-3-17 00:48
本帖最后由 国妓米兰 于 2013-3-17 00:52 编辑
EZ企鹅 发表于 2013-3-17 00:14
java相当好学,只要逻辑清晰,根本不用求助别人,自学可以到很高的层次,各种资源非常多.


多接触几种语言,

回头再来看java,理解会深很多。不管怎么样其实都是数据结构和算法,但是不同的展现可以让你对问题有更多角度的看法和理解

java 7开始也都在吸收fp的功能了
作者: EZ企鹅    时间: 2013-3-17 01:47
国妓米兰 发表于 2013-3-17 00:48
多接触几种语言,

回头再来看java,理解会深很多。不管怎么样其实都是数据结构和算法,但是不同的展 ...

......好的,你赢了
作者: 国妓米兰    时间: 2013-3-17 02:02
EZ企鹅 发表于 2013-3-17 01:47
......好的,你赢了



nevermind 我也是胡乱在瞎说

估计lz就是想单纯做一些安卓开发而已。。。

安卓开发人员参差不齐啊
作者: EZ企鹅    时间: 2013-3-17 02:07
国妓米兰 发表于 2013-3-17 02:02
nevermind 我也是胡乱在瞎说

估计lz就是想单纯做一些安卓开发而已。。。

LZ的基础还没打好.学编程要出头的话逻辑思维一定要非常清晰.国外知识体系这么开放.只要是逻辑思维出色的人一定能学好.不管搞什么开发,用什么语言.主要就三个方面,图形,通信,以及对操作系统的了解程度.这三方面过关了就是出色的开发者,可以适应任意需求开发
作者: 国妓米兰    时间: 2013-3-17 02:26
EZ企鹅 发表于 2013-3-17 02:07
LZ的基础还没打好.学编程要出头的话逻辑思维一定要非常清晰.国外知识体系这么开放.只要是逻辑思维出色的人 ...

没太看明白具体什么意思,但是感觉你说前面2个其实属于数据结构和算法。操作系统和计算机网络都很重要。如果要更深的话
作者: walkman_cdwx    时间: 2013-3-17 08:06
这个程序有三个毛病
1是函数写到了main里面
2是循环100次应该是越界了,超过了int的最大值
3是用递归算fibonacci效率低,改用迭代效率高点

作者: xiaos    时间: 2013-3-17 11:26
:lol:lol
作者: 25岁无能力男    时间: 2013-3-17 11:29
楼主连最基本的java规则都没弄清,还是找本入门书看看吧
作者: 你踩着我脚了    时间: 2013-3-17 11:30
都是高帅富,。。。搬砖的根本看不懂这些乱码。




欢迎光临 八达网 (https://www.8-da.com/) Powered by Discuz! X2.5