using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Корни.Половинное_деление { class Program { public static double f(double x) { double retVal = 1 - x + Math.Sin(x) - Math.Log(1 + x, Math.E); return retVal; // возвращение значения заданной функции f(x) } static void Main(string[] args) { double a = 0, b = 1.5, eps = 1e-4; double dx = b - a; double xi = 0; while (Math.Abs(f(xi)) > eps) { dx /= 2.0; xi = a + dx; if (Math.Sign(f(a)) != Math.Sign(f(xi))) b = xi; else a = xi; } Console.WriteLine("Найден корень уравнения x = {0:f4} с точностью eps = 0.0001\n", xi); Console.WriteLine("Проверка. Подставим полученный корень в уравнение\nf(x) = {0:f3}", f(xi)); Console.ReadKey(); } } }