Метод определения минимума функции с шагом h. С использованием делегата - C#
Формулировка задачи:
Составить метод определения минимума функции y=f(x), заданной в дискретных точках отрезка [a, b] с постоянным шагом h. Используя метод, найти минимумы функций y=(sinx)^2*cosx-ln|x| , используя делегат. Шаг h и точки отрезка пользватель задает сам
Решение задачи: «Метод определения минимума функции с шагом h. С использованием делегата»
textual
Листинг программы
- class Program
- {
- static double Func(double x)
- {
- //y=(sinx)^2*cosx-ln|x|
- return Math.Pow(Math.Sin(x), 2) * Math.Cos(x) - Math.Log(Math.Abs(x));
- }
- static double GetMinimum(Func<double,double> f, double a, double b, double h)
- {
- double min = double.MaxValue;
- for (double i = a; i <= b; i+=h)
- {
- double y = f(i);
- if (y < min)
- min = y;
- }
- return min;
- }
- static void Main(string[] args)
- {
- Console.WriteLine("Введите начло отрезка: ");
- double a = double.Parse(Console.ReadLine());
- Console.WriteLine("Введите конец отрезка: ");
- double b = double.Parse(Console.ReadLine());
- Console.WriteLine("Введите шаг: ");
- double h = double.Parse(Console.ReadLine());
- Console.WriteLine("Минимум функции на отрезке [{0},{1}] равен {2}", a, b, GetMinimum(Func, a, b, h));
- Console.ReadKey();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д