斐波那契数列在C#中的教学案例分享
导读:在C#中,可以通过多种方法实现斐波那契数列 递归方法: using System; class Program { static void Main( { int n = 10; // 输出前10个斐...
在C#中,可以通过多种方法实现斐波那契数列
- 递归方法:
using System;
class Program
{
static void Main()
{
int n = 10;
// 输出前10个斐波那契数
for (int i = 0;
i <
n;
i++)
{
Console.Write(FibonacciRecursive(i) + " ");
}
}
static int FibonacciRecursive(int n)
{
if (n <
= 1)
{
return n;
}
else
{
return FibonacciRecursive(n - 1) + FibonacciRecursive(n - 2);
}
}
}
- 循环方法:
using System;
class Program
{
static void Main()
{
int n = 10;
// 输出前10个斐波那契数
for (int i = 0;
i <
n;
i++)
{
Console.Write(FibonacciIterative(i) + " ");
}
}
static int FibonacciIterative(int n)
{
if (n <
= 1)
{
return n;
}
int a = 0, b = 1, result = 0;
for (int i = 2;
i <
= n;
i++)
{
result = a + b;
a = b;
b = result;
}
return result;
}
}
- 使用动态规划(自底向上):
using System;
class Program
{
static void Main()
{
int n = 10;
// 输出前10个斐波那契数
int[] fibArray = new int[n];
FibonacciDynamic(n, fibArray);
for (int i = 0;
i <
n;
i++)
{
Console.Write(fibArray[i] + " ");
}
}
static void FibonacciDynamic(int n, int[] fibArray)
{
fibArray[0] = 0;
if (n >
1)
{
fibArray[1] = 1;
for (int i = 2;
i <
n;
i++)
{
fibArray[i] = fibArray[i - 1] + fibArray[i - 2];
}
}
}
}
这些示例展示了如何在C#中实现斐波那契数列。你可以根据需要选择合适的方法。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 斐波那契数列在C#中的教学案例分享
本文地址: https://pptw.com/jishu/698320.html