小练习 没什么算法或者数据结构
#include <iostream>
namespace Fib
{
long Fib1(int n);
}
namespace Error
{
void ShowErr(int n);
}
long Fib::Fib1(int n)
{
int i;
long fib1=1,fib2=1,fib3=1;
if(n<=0||n>19)
throw(n);
for(i=2;i<=n;i++)
{
fib3=fib1+fib2;
fib1=fib2;
fib2=fib3;
}
return fib3;
}
void Error::ShowErr(int n)
{
std::cout<<"不能求Fib数列的第"<<n<<"项"<<std::endl;
}
int main()
{
try
{
std::cout<<"Fib(10)="<<Fib::Fib1(10)<<std::endl;
}
catch(int n)
{
Error::ShowErr(n);
}
return 0;
}