JAVA程序1,1,2,3,5,8,13,21....第30个是啥...?新手求一程序,要越简单越好!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA程序1,1,2,3,5,8,13,21....第30个是啥...?新手求一程序,要越简单越好!相关的知识,希望对你有一定的参考价值。

数学上,斐波那契数列是以递归的方法来定义:
* F(0) = 0
* F(1) = 1
* F(n) = F(n - 1) + F(n - 2)
就是说从第三个数字开始,每一个数等于前两项的和,所以
A1输入0  A2输入1
A3输入=A1+A2

    意大利数学家列昂纳多·费波纳茨(Leonardo Fibonacci,生于公元1170年,卒于1240年,籍贯大概是比萨),“费波纳茨数列”的发明者。斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……

   这个数列从第三项开始,每一项都等于前两项之和。它的通项公式为:(1/√5)*[(1+√5)/2]^n - [(1-√5)/2]^n(又叫“比内公式”,是用无理数表示有理数的一个范例。)(√5表示根号5)

有趣的是:这样一个完全是自然数的数列,通项公式居然是用无理数来表达的。

 随着数列项数的增加,前一项与后一项之比越来越逼近黄金分割的数值0.6180339887……

从第二项开始,每个奇数项的平方都比前后两项之积多1,每个偶数项的平方都比前后两项之积少1。

参考技术A 这个特殊的序列叫做费波纳茨数列。故事来源:一天,皇帝骑在马上,率领着文武百官,在号兵鼓手、马队的簇拥下,浩浩荡荡向比萨市费波纳茨的居所进发。弗德烈皇帝向费波纳茨提出了这样一个问题:如果一对兔子从第二个月开始,每年可产一对兔子,试问一年后这个特定的区域里共有多少对兔子?
费波纳茨顺口回答了皇帝的问题:共有144对,并把他的计算方法说了出来——1,1,2,3,5,8,13,21,34,55,89,144,这就是费波纳茨数列的原版。根据这种计算方法,可以把这个数列无限量地扩大下去,……55,89,144,233,377,610。
费波纳茨道出了一个自然地数列,后人把它叫做费波纳茨数列。 1、循环实现
int fun(int n)
int sum = 0, tmp1=1, tmp2 = 1;
if (n < 2)
return 1;
for(int i = 2; i <= n; i++)
sum = tmp1 + tmp2;
tmp2 = tmp1;
tmp1 = sum;

return sum;

2、递归实现
int fun1(int n)
int sum = 0;
if (n < 2)
return 1;
for(int i = 2; i <= n; i++)
sum = fun1(i-2) + fun1(i-1);

return sum;
参考技术B public class Number public static void main(String[] args)
int num1=1,num2=0,result=0;
for(int i=1;i<=30;i++)
result=num1+num2;
num1=num2;
num2=result;

System.out.println("第30个数是:"+result);

参考技术C int k ;int befor = 1;int later = 1;
for(int i =1;i<=28;i++)k = befor+later;befor =later;later = k;System.out.println("第30个是"+k);

以上内容为直接写的,没试过,即使错了,大概也是这思路
参考技术D public void GetNumbersByPos(int pos)

int number1=1;
int number2=1;
int sum=0;
for(int i=2;i<=pos;i++)

if(pos<2)

sum=1;
break;

sum=number1+number2;
number2=number1;
number1=sum;

System.out.print("第"+pos+"个数字为:"+sum);

20145235《Java程序设计》课程总结

每周读书笔记链接汇总

20145235《Java程序设计》第1周学习总结

20145235《Java程序设计》第2周学习总结

20145235《Java程序设计》第3周学习总结

20145235《Java程序设计》第4周学习总结

20145235《Java程序设计》第5周学习总结

20145235《Java程序设计》第6周学习总结

20145235《Java程序设计》第7周学习总结

20145235《Java程序设计》第8周学习总结

20145235《Java程序设计》第9周学习总结

20145235《Java程序设计》第10周学习总结

实验报告链接汇总

20145235《Java程序设计》实验1实验报告

20145235《Java程序设计》实验2实验报告

20145235《Java程序设计》实验3实验报告

20145235《Java程序设计》实验4实验报告

20145235《Java程序设计》实验5实验报告

代码托管链接:

代码托管链接

代码托管链接

 

课程收获与不足

自己的收获:

懂得了java面向对象的思想,我感觉这个思想对我来说很重要,有了一种思维方向,对于问题有了另一种解决的思路。

自己需要改进的地方:

是我的原因,我对学Java的态度是不正面的,这学期的Java不代表我再也不会学Java,虽然我没好好学Java,但是我清楚的认识到,Java非常非常有用,假期再战。

如果有结对,写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议。

给学弟学妹们的学习建议

如果重新学习这门课,怎么做才可以学的更好?

我一定会先学知识,在写博客,绝对不会把写博客看得太重,就算完不成博客,一定要先学会知识。

问卷调查

你觉得这门课老师应该继续做哪一件事情?

课堂检测,这个真实反映了学生的学习情况。

你觉得这门课老师应该停止做哪一件事情?

写博客,其实不难发现,真正在写博客的同学是很少的一部分,与其把大把时间浪费在抄博客上,不如看个视频或者看书。

你觉得这门课老师应该开始做什么新的事情?

上课应该讲课本不容易掌握的,重要的知识,而不是把很多课堂时间交给学生,白白浪费。

以上是关于JAVA程序1,1,2,3,5,8,13,21....第30个是啥...?新手求一程序,要越简单越好!的主要内容,如果未能解决你的问题,请参考以下文章

java基礎有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

题目: 2/1, 3/2, 5/3, 8/5, 13/8, 21 13 ...

使用C语言编写程序,求解有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个序列的前20项

Java基础50道经典练习题(20)——求前20项之和

Java基础50道经典练习题(20)——求前20项之和

怎么用java打印图形三: 1 7 12 16 19 21 2 8 13 17 20 3 9 14 18 4 10 15 5 11 6