Создать метод, реализующий нахождение максимумов и минимумов функции - 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;
        }
    }
}

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


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

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

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