static void Main(string[] args) { Parser p = new Parser("((x-0,5)^2 - 1)^4-(y-0,1)*((y-0,1)^3)"); double answer = p.calc(-0.3361, -0.2010); double rad = 2; double[] Y = new double[2]; double[] X = new double[2]; double[] Xok = new double[2]; int m = 1000; int j = 1; X[0] = 2; X[1] = 2; double cal, calx; Random rx = new Random(); double[] ar = new double[2]; double a, b; while (j <= m) { rad = Math.Sqrt(X[0] * X[0] + X[1] * X[1]); a = -rad; b = rad; ar[0] = rx.NextDouble() * (b - a) + a; ar[1] = rx.NextDouble() * (b - a) + a; Y = ravn_rasp(ar); cal = p.calc(Y[0], Y[1]); if (cal < 0) { X[0] = Y[0]; X[1] = Y[1]; } else if (j < m) { j = j + 1; } else if (j == m) { Xok[0] = X[0]; Xok[1] = X[1]; j = j + 1; } } //Console.WriteLine("x={0}, y={1}, f={2}", Xok[0], Xok[1], cal); calx = p.calc(Xok[0], Xok[1]); Console.WriteLine("x(1)={0}, x(2)={1}, f(x)={2}", Xok[0], Xok[1], calx); Console.ReadKey(); }