今天打算上网收索一些简单的题目作一做,算着练习吧,但是发现适合我现在做的
题并不多,偶然发现了一道,很简单,据说还是一道笔试题,就把它在做了一下,调
试过了。
题目是:已知数列:1,1,2,3,5,8,13,21,34,..... 求第50个数值? 并用c#写出算法?
我的代码如下:
class Program
{
static void Main(string[] args)
{
int[] a ={ 1, 1, 2, 3 };
int[] b=new int [50];
for (int i = 0; i < 4; i++)
b[i] = a[i];
for (int j=3;j < 50;j ++)
b [j ]=b [j -1]+b [j-2];
Console.Write("{0}",b[6]);
}
}
但是那位作者写的代码和我不一样,我也把他的粘贴来了,算作一个比较吧!
他的代码:
private int getValues(int n)
{
int i,j,k,temp;
j=1;
k=1;
temp=0;
if(n<=2)
{
return k;
}
else
{
for(i=0;i<n-2;i++)
{
temp=k;
k=k+j;
j=temp;
}
return k;
}
}
题并不多,偶然发现了一道,很简单,据说还是一道笔试题,就把它在做了一下,调
试过了。
题目是:已知数列:1,1,2,3,5,8,13,21,34,..... 求第50个数值? 并用c#写出算法?
我的代码如下:
class Program
{
static void Main(string[] args)
{
int[] a ={ 1, 1, 2, 3 };
int[] b=new int [50];
for (int i = 0; i < 4; i++)
b[i] = a[i];
for (int j=3;j < 50;j ++)
b [j ]=b [j -1]+b [j-2];
Console.Write("{0}",b[6]);
}
}
但是那位作者写的代码和我不一样,我也把他的粘贴来了,算作一个比较吧!
他的代码:
private int getValues(int n)
{
int i,j,k,temp;
j=1;
k=1;
temp=0;
if(n<=2)
{
return k;
}
else
{
for(i=0;i<n-2;i++)
{
temp=k;
k=k+j;
j=temp;
}
return k;
}
}