rpct.net
当前位置:首页 >> 用循环求FiBonACCi数列,C++ >>

用循环求FiBonACCi数列,C++

#include <iostream> using namespace std; int main() { int l; cout<<"输入数列长度:" cin>>l; long m[100]={0,1,1},k=0; for(int i=1;i<=l;i++) { if(i==1) { cout<<m[0]<<" "; continue; } else if(i==2) { cout<<m[1]<<" "; continue; } else if(i==3) {

#include<stdio.h>#include<stdlib.h>#define N 200long int F[N];void Fi(int n);long int printf("Fibonacc数列前%d项:%ld\n",n,sum);system("pause");}void Fi(int n){int i=

//本程序在vc++陆.0环境下运行通过 #include using namespace std; int main(void){ int a=依,b=依;//设置两个初始值此时a=依,b=依 cout<<a<<ends<<b<<ends;//输出初始值 for (int i=贰;i<四0;i++){//循环计算输出第三-四0个数 b=b+a;//计算前两位之和放在b中第一轮a=依,b=贰第二轮a=依,b=三 cout<<b<<ends;//输出计算后b的数 a=b-a;//用b-a就是计算之前b的数,放入a中,第一轮a=依,b=贰 第二轮a=贰,b=三 以此类推 } return 0;

求Fibonacci 数列前20项不需要递归 int Print_Fib_Nums(int size) { if(size return -1; else if(size ==1){ printf("The first Fibonacci number is 1.\n"); return 0; } else if(size == 2){ printf("The first two Fibonacci numbers are 1, 1.\n"); return 0; } else{

#include<stdio.h> int Fibonacci(int n) {int f; if(n<=1) return 1; return Fibonacci(n-1)+Fibonacci(n-2); return f; } void main() {int n; int f; scanf("%d",&n); f=Fibonacci(n); printf("%d\n",f); } 这是用递归的方法来求累加和.

/*用数组的方法求Fibonacci数列的第n项*/#include<iostream> using namespace std; int main(void) { int n,i,*fib; cin>>n; if(n==1||n==2) cout<<"第"<<n<<"项是: 1"<<endl; else { fib=new int[n]; fib[0]=fib[1]=1; for(i=2;i<n;i++) fib[i]=fib[i-2]+fib[i-1]; for(i=0;i<n;i++) cout<<"第"<<i<<"项是: "<<fib[i]<<endl; delete[] fib; } return 0; }

用循环效率高,用迭代也能实现

#include <isotream>#using namespace std int fibonacci(int n) { if(n == 0) return 0; if(n == 1) return 1; else if(n > 1) return fibonacci(n - 1) + fibonacci(n - 2); } int main() { int n; while(true) { scanf("%d",&n); if(n<0 || n > 90) break; else cout<<fibonacci(n)<<endl; } return 0; }

/** * 做一个循环,求斐波那契数列 * * 用JAVA写一个循环,求斐波那契数列: * 1,1,2,3,5,8,13,21,34,……144,233,377,…… * */ package com.test.fibonacci.main; public class Fibonacii { public static void getFibonacii(int number){ long current = 1

#include<stdio.h> int main() { int i,a[20]={1,1}; printf("%d %d ",1,1); for(i=2;i<20;i++) { a[i]=a[i-1]+a[i-2]; printf("%d ",a[i]); //&去掉,再给循环加花括号 } return 0; }

网站首页 | 网站地图
All rights reserved Powered by www.rpct.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com