Создать метод, реализующий нахождение максимумов и минимумов функции - C#
Формулировка задачи:
Подскажите пожалуйста, не могу разобраться, как создать метод, реализующий нахождение максимумов и минимумов простенькой функции y=x^2-2*x-8
Составить метод определения минимума функции y=f(x), заданной в дискретных точках отрезка [a, b] с постоянным шагом h. Используя метод, найти минимумы функций y=(sinx)^2*cosx-ln|x|,y=x^2-2x+8.
это задание целиком
Решение задачи: «Создать метод, реализующий нахождение максимумов и минимумов функции»
textual
Листинг программы
using System; namespace ConsoleApplication2 { class Program { static void Main() { const double a = -2, b = 2, epsilon = 0.0001; var max = Dichotomy(x => -F(x), a, b, epsilon); Console.WriteLine("max = {0}\tF(max) = {1}", max, F(max)); Console.ReadKey(); } private static double F(double x) { return Math.Sin(x)*Math.Sin(x)*Math.Cos(x) - Math.Log(Math.Abs(x)); } private static double Dichotomy(Func<double, double> func, double a, double b, double epsilon) { double delta = epsilon / 10; while (b - a >= epsilon) { double middle = (a + b) / 2; double lambda = middle - delta, mu = middle + delta; if (func(lambda) < func(mu)) b = mu; else a = lambda; } return (a + b) / 2; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д