понедельник, 22 октября 2012 г.

Решение уравнений методом деления отрезка пополам


Работу алгоритма не проверял, но сие чудо должно работать)))
double a = 0, b = 5, x = 2;
            int i;

 while (Math.Abs(x * x - 5) > 0.01)
            {
                x = (a + b) / 2;
                if ((a * a - 5) * (x * x - 5) < 0)
                {
                    b = x;
                }
                else
                    if ((x*x-5)==0)
                break;
                if ((x * x - 5) * (b * b - 5) < 0)
                {
                    a = x;
                }

            }
            Console.WriteLine(x);
            Console.ReadKey();

Комментариев нет:

Отправить комментарий

Примечание. Отправлять комментарии могут только участники этого блога.