【i码邦】java经典基础源码练习题170906

有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
 
提示:寻找分子和分母的变换规律。
 
学java编程,动手才是王道!!
 


--来自网页客户端
已邀请:

笨笨2017

赞同来自:

public class Test906{
public static void main(String[] args){
System.out.println("这个数列前"+20+"项之和:");
jisuan(20);
}

public static void jisuan(int n){
String s = "";
double sum=0;

for(int i=1;i<=n;i++){

s += "+"+getX(i)+"/"+getY(i);
//System.out.println(getX(i)*1.0/getY(i));
sum+=getX(i)*1.0/getY(i);
}

System.out.println(s.substring(1) + " = "+sum);
}
public static int getX(int n){
int x=0;

if(n==1){
x=2;
return x;
}

if(n==2){
x=3;
return x;
}

return getX(n-1)+getX(n-2);
}

public static int getY(int n){
int y=0;

if(n==1){
y=1;
return y;
}

if(n==2){
y=2;
return y;
}

return getY(n-1)+getY(n-2);
}

}
Screenshot_2017-09-06-17-19-36-139_cn.idehub_.javaide2_.png


--来自移动客户端

钢镚

赞同来自:

public class Demo2 {
public static void main(String[] args) {
int a=2,b=1;
double sum=0;
for(int i=1;i<=20;i++){
System.out.print(a+"/"+b);
sum+=a/b;
int c=a;
a=a+b;
b=c;
if(i!=20) System.out.print("+");
}
System.out.print("="+sum);
//sum=21.0
}
}

--来自移动客户端

钢镚

赞同来自: 爱好者121

public class Demo2 {
public static void main(String[] args) {
double a=2,b=1;
double sum=0;
for(int i=1;i<=20;i++){
System.out.print((int)a+"/"+(int)b);
sum+=a/b;
double c=a;
a=a+b;
b=c;
if(i!=20) System.out.print("+");
}
System.out.print("="+sum);
//sum=32.66026079864164
}
}

--来自移动客户端

a不是编程员

赞同来自:

public class qiang20he {
public static void main(String[] args) {

double a=2;
double b=1;
double t=0;

for(int c=0;c<20;c++){
t+=(a/b);
double r;
r=b;
b=a;
a=r+a;
System.out.println(t);
}

}
}

--来自移动客户端

nagaloop

赞同来自:

class he20{
public static void main(String[] args){
double t;
double a=1;
double b=2;
double sum=0;
for(int i=0;i<20;i++){
sum+=a/b;
t=b;
b=t+a;
a=t;
}
System.out.println(sum);
}


--来自移动客户端

粒粒

赞同来自:

public class lixin{
public static void main(String[] args){
System.out.println("数列的和:");
double a=1,b=2;
double sum=0;
double t;
for(int i=1;i<=20;i++)
{

sum=+b/a;
t=a+b;
a=a++;
b=t;
}

System.out.println(sum);
}
}

--来自移动客户端

一季红尘

赞同来自:

结果是21,如果错了请告知谢谢!!!

public class Test1 {
public static void main(String[] args) {
int a, b = 1, c, d = 0;
int x = 1;
int y = 1;
double sum = 0;
for (int i = 0; i < 20; i++) {
a = x;
x += b;
b = a;
c = y;
y += d;
d = c;
sum += x / y;
System.out.println(x + "/" + y);
}
System.out.println(sum);
}
}

--来自移动客户端

一季红尘

赞同来自:

上个写错了

public class Test1 {
public static void main(String[] args) {
int a = 1, b = 2, temp;
double sum = 0;
for (int i = 0; i < 20; i++) {
System.out.println(b + "/" + a);
sum += (double) b / (double) a;
temp = b;
b += a;
a = temp;
}
System.out.println("结果为:" + sum);
}
}

--来自移动客户端

蝴蝶

赞同来自:

public class banksa{
public static void main(String[] args){
System.out.println("Hello, world");
double x=2,y=1;
double sum=0,m=0;
for(int i=0;i<20;i++){
sum=sum+x/y;
System.out.println((int)x+"/"+(int)y);
m=x;
x=m+y;
y=m;
}
System.out.println((int)sum);

}
}

Screenshot_20171217-181049.jpg


--来自移动客户端

棒秸秆儿 - 棒秸秆儿

赞同来自:

public class sumFenShu{
public static void main(String[] args){
double
num1=1,num2=2,sum=0;
for (int x=1;x<=20;x++){
sum=sum+num2/num1;
System.out.println("第"+x+"次:"+num2+"/"+num1+"="+(num2/num1));
num2=num1+num2;
num1=num2-num1;

System.out.println(sum);}

}
}

--来自移动客户端

要回复问题请先登录注册

Template error, template file not found