Рекурсивный метод вычисления суммы корней - C#

Узнай цену своей работы

Формулировка задачи:

Есть задача написать рекурсивный метод возвращающий значение. Вот задание: , для натурального N. Вот код
Листинг программы
  1. static double F(double n)
  2. {
  3. if (n == 1) return 1;
  4. else return Math.Pow((F(n-1)+Math.Pow(n,0.5)),0.5);
  5. }
  6. static void Main(string[] args)
  7. {
  8. Console.WriteLine("Введите N");
  9. double n = double.Parse(Console.ReadLine());
  10. double x = F(n);
  11. Console.WriteLine(x);
  12. }
Для двух нормально считает, потом уже нет. Помогите исправить ошибку в алгоритме.

Решение задачи: «Рекурсивный метод вычисления суммы корней»

textual
Листинг программы
  1. namespace Recursia
  2. {
  3.     class Program
  4.     {
  5.         static int current = 0;
  6.         static double F(int n)
  7.         {
  8.             if (n < 1)
  9.                 return 0;
  10.             current++;
  11.             if (n == current)
  12.             {
  13.                 int temp = current;
  14.                 current = 0;
  15.                 return Math.Sqrt(temp);
  16.             }
  17.             else
  18.             {
  19.                 return Math.Sqrt(current + F(n));
  20.             }
  21.         }
  22.         static void Main(string[] args)
  23.         {
  24.             double x;
  25.             x = F(4);
  26.             Console.WriteLine(x);
  27.             x = F(4);
  28.             Console.WriteLine(x);
  29.             Console.ReadLine();
  30.         }
  31.     }
  32. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.857 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы