public const double delta = 0.618;
public const double betta = 0.382;
static double func(double x)
return 2 * Math.Pow(x,4) - Math.Pow(x,2) - 10;
public static void Main()
Console.WriteLine("f(min) = " + FindMin(a,b,eps));
Console.WriteLine("f(max) = " + FindMax(a,b,eps));
static double FindMin(double a, double b, double eps)
x1 = delta * a + betta * b;
x2 = betta * a + delta * b;
if(Math.Abs(b - a) < eps)
static double FindMax(double a, double b, double eps)
x1 = delta * a + betta * b;
x2 = betta * a + delta * b;
if(Math.Abs(b - a) < eps)