Рекурсивный метод вычисления суммы корней - C#
Формулировка задачи:
Есть задача написать рекурсивный метод возвращающий значение.
Вот задание: , для натурального N.
Вот код
Для двух нормально считает, потом уже нет. Помогите исправить ошибку в алгоритме.
Листинг программы
- static double F(double n)
- {
- if (n == 1) return 1;
- else return Math.Pow((F(n-1)+Math.Pow(n,0.5)),0.5);
- }
- static void Main(string[] args)
- {
- Console.WriteLine("Введите N");
- double n = double.Parse(Console.ReadLine());
- double x = F(n);
- Console.WriteLine(x);
- }
Решение задачи: «Рекурсивный метод вычисления суммы корней»
textual
Листинг программы
- namespace Recursia
- {
- class Program
- {
- static int current = 0;
- static double F(int n)
- {
- if (n < 1)
- return 0;
- current++;
- if (n == current)
- {
- int temp = current;
- current = 0;
- return Math.Sqrt(temp);
- }
- else
- {
- return Math.Sqrt(current + F(n));
- }
- }
- static void Main(string[] args)
- {
- double x;
- x = F(4);
- Console.WriteLine(x);
- x = F(4);
- Console.WriteLine(x);
- Console.ReadLine();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д