Вычислить с заданной точностью корень уравнения - C#
Формулировка задачи:
Помогите решить Задачу на C#
Дано действительное положительное число. Методом итераций вычислить с заданной точностью корень уравнения f(x)=0. В скобках указано начальное приближение к корню. x-sin(x)/2-1=0 (0) Точность задается пользователем
Решение задачи: «Вычислить с заданной точностью корень уравнения»
textual
Листинг программы
class Program
{
private static double F(double x)
{
return x-Math.Sin(x)/2 - 1.0;
}
private static double Newton(double x0, double eps, double dx)
{
double x1 = x0;
double dif = Math.Round(F(x1) / F(x1 + dx), 5);
double alpha = -1.0 / dif;
do
{
x0 = x1;
x1 += Math.Round(alpha * F(x0), 4);
} while (Math.Abs(x1 - x0) > eps);
return x1;
}
public static void Main()
{
const double eps = 0.00001; // точность расчета
const double dx = 0.1; // шаг
double x0 = 0.0; // начальная точка
Console.WriteLine(Newton(x0, eps, dx));
Console.ReadKey();
}
}