/*
* Copyright (c) 2011, 烟台大学计算机学院
* All rights reserved.
* 作 者: 孙培培
* 完成日期:2012 年 10月12 日
* 版 本 号:v1.0
* 输入描述: 两个正整数
* 问题描述:给定两个正整数,求出两数的正差值并输出
* 程序输出:给定两数的正差值
* 问题分析:通过比较四个的大小
*/
//迭代法
#include <iostream>
using namespace std;
int fib(int n);
int main()
{
cout<<fib(20)<<endl;
return 0;
}
int fib(int n)
{
int f,f1,f2,i;
if(n==1)
return 0;
else if(n==2)
return 1;
else
{
f1=0;
f2=1;
for(i=3;i<=n;++i)
{
f=f1+f2;
f1=f2;
f2=f;
}
}
return f2;
}
//递归法
#include <iostream>
using namespace std;
int fib(int n);
int main()
{
cout<<fib(20)<<endl;
return 0;
}
int fib(int n)
{
if(n==1)
return 0;
else if(n==2)
return 1;
else
return(fib(n-1)+fib(n-2));
}