有一组分数序列2/1 ,3/2 ,5/3 ,8/5 ,13/8 ,21/13 ...
求此数列前20项之和
求此数列前20项之和
解决方案 »
- 题目解答,谢谢
- 不会死锁的问题?
- 还是没有解决驱动问题啊~~~java连sql server2005这已经是第三贴了~~~前两贴都沉了
- 下面是我用GUI编写的一个写的txt文件查看器,可以浏览文件,但为什么在浏览前会是这样(F:\lesson3\\InterfaceTest.java)有两个\\ 何解
- Jboss 运行出错!!!!!!!!!!!
- java爱好者大讨论!
- 容易问题,请教如何将一个字符串内的文字内容……
- 将对象保存到磁盘是什么意思?
- 一个有关于applet的问题,在线给分(简单)
- 如何通过javac命令编译src下多个JAVA文件,并放到对应的bin下对应包下
- Java如何取客户端的windows域帐号?
- Java:将一个long型的数据转换成定长的字符串
public class QuestionOf_11 {
public static void main(String[] args) {
int[] arr = new int[22];
arr[0] = arr[1] = 1;
double sum = 0.0;
for (int i = 2; i < arr.length; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
}
for (int i = 1; i < arr.length - 1; i++) {
sum += (float)arr[i + 1] / arr[i];
}
System.out.println(sum);
}
}结果:32.660260796546936
精度会丢失sum += (float)arr[i + 1] / arr[i];
public static void main(String[] args) {
int[] arr = new int[22];
arr[0] = arr[1] = 1;
double sum = 0.0;
for (int i = 2; i < arr.length; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
sum += (double)arr[i]/arr[i-1];
}
System.out.println(sum);
}
}结果:32.66026079864164
double fm=1d;
double sun=0.0;
for(int i=0;i<20;i++){
sun+=fz/fm;
double temp=fz+fm;
fm=fz;
fz=temp;
}
System.out.println(sun);