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

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

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

Вот задание: Реализуйте рекурсивный алгоритм для вычисления квадратного корня числа. в качестве исходных данных используйте тройку чисел N, A, E, где N -число, из которого требуется извлечь квадратный корень, A -приближенное значение корня, E- допустимая ошибка результата. Вот код:
{
class Programm
{
public static double root(double N, double A, double E)
{
 
if (Math.Abs(Math.Pow(A, 2) - N) < E)
{
return A;
}
else
{
return root(N, (Math.Pow(A, 2) + N) / 2 * A, E);
}
}
 
public static void Main(string[] args)
{
Console.WriteLine("Введите N");
double N = double.Parse(Console.ReadLine());
Console.WriteLine("Введите E");
double E = double.Parse(Console.ReadLine());
Console.WriteLine("Введите A");
double A = double.Parse(Console.ReadLine());
double x = root(N, A, E);
Console.WriteLine(x);
Console.ReadKey();
}
}
}
Выдает ошибку StackOverflowException

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

textual
Листинг программы
return root(N, (Math.Pow(A, 2) + N) / (2 * A), E);

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


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

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

12   голосов , оценка 4 из 5
Похожие ответы