1 条题解

  • 0
    @ 2025-10-10 15:45:27

    C :

    #include<stdio.h>
    int f(int n){
    	if(n==1||n==2){
    		return 1;
    	}else{
    		return f(n-1) + f(n-2);
    	}
    }
    void main(){
    	int n,i;
    	scanf("%d",&n);
    	double s = 0;
    	for(i=1;i<=n;i++){
    		s = s + f(i)*1.0/f(i+1);
    	}
    	printf("%.3lf",s);
    }
    
    

    C++ :

    #include<iostream>
    #include<iomanip>
    using namespace std;
    
    
    int digui(int n);
    
    int main(){
    	int n=0;
    	double s=0;
    	cin>>n;
    	
    	for(int i=1;i<=n;i++){
    		s=s+digui(i)*1.0/digui(i+1);
    		
    	}
    	
    	cout<<setiosflags(ios::fixed)<<setprecision(3)<<s<<endl;
    }
    
    int digui(int n){
    	if(n==1 || n==2){
    		return 1;
    	}
    	else{
    		return digui(n-1)+digui(n-2);
    	}
    }
    
    

    Pascal :

    var
    sum,a,b,d:real; 
    c,n:longint; 
    begin
    read(n); 
    sum:=0; 
    a:=1;
    b:=1; 
    for c:=1 to n do 
      begin 
      sum:=sum+a/b; 
      d:=b; 
      b:=a+b; 
      a:=d; 
      end; 
      writeln(sum:0:3);
    end.
    

    Java :

    import java.text.DecimalFormat;
    import java.util.Scanner;
    public class Main{
    	public static void main(String[] args) {
    		Scanner scanner=new Scanner(System.in);
    		int n=scanner.nextInt();
    		int a=1;
    		int b=1;
    		float sum=0;
    		for(int i=0;i<n;i++){
    			sum=sum+(float)a/b;
    			int tmp=a;
    			a=b;
    			b=tmp+b;
    		}
    		DecimalFormat df = new DecimalFormat("#.000");
    		System.out.println(df.format(sum));
    	}
    }
    
    

    Python :

    def feiBo(n):
        if n == 1 or n == 2 :
            return 1
        else:
            return feiBo(n - 1) + feiBo(n - 2);
    n = int(input())
    s = 0
    for i in range (1,n+1):
         s += feiBo(i) / feiBo(i + 1)
    print('%.3f' % s)                
    
    
    • 1

    【入门】求1/1+1/2+2/3+3/5+5/8+8/13+13/21……的前n项的和

    信息

    ID
    142
    时间
    1000ms
    内存
    32MiB
    难度
    10
    标签
    递交数
    2
    已通过
    2
    上传者