Найти n-й член числовой последовательности, которая определяется рекуррентной формулой - C# (192746)
Формулировка задачи:
Пожалуйста, помогите. Желательно решение по-простенькому.Описать методы для выполнения задания двумя способами: через цикл и используя механизм рекурсии. Задание: Найти n-й член числовой последовательности, которая определяется рекуррентной формулой a1 = 1; a2 = 2; an+1 = 2an + an–1
Решение задачи: «Найти n-й член числовой последовательности, которая определяется рекуррентной формулой»
textual
Листинг программы
class Program
{
public static int A(int n)
{
if (n == 0) return 1;
if (n == 1) return 2;
if (n > 1) return 2 * A(n - 1) + A(n - 2);
return 0;
}
static void Main(string[] args)
{
Console.Write("Введите n:");
int n = System.Convert.ToInt32(Console.ReadLine());
int[] array = new int[n];
if (n > 1)
{
array[0] = 1;
array[1] = 2;
for (int i = 1; i < n-1; i++)
{
array[i + 1] = 2 * array[i] + array[i - 1];
}
int recursion = A(n-1);
Console.WriteLine("n-й член последовательности равен: \n Через цикл:{0} Через рекурсию:{1}", array[n-1], recursion);
}
else Console.Write("Введено некорректное число");
Console.ReadKey();
}
}