0

Проблема состоит в том, что откуда-то появляется добавочная погрешность сначала на +0,00000000000001. Далее она либо ещё раз увеличивается, либо уменьшает числа при расчётах дважды на -0,00000000000001. В чём может быть проблема?( Прилажу иллюстрацию и кусок кода где производятся расчёты!

            n1 = (int)((b - x0) / h1);
            A1 = new double[n1+1];
            x1 = new double[n1+1];
            double h2 = Math.Round(h1 / 2,3);
            n2 = (int)((b - x0) / h2);
            A2 = new double[n2+1];
            x2 = new double[n2+1];
            x1[0] = x0;
            A1[0] = y0;
            x2[0] = x0;
            A2[0] = y0;
            for (int i = 0; i < n1; i++)
            {
                x1[i + 1] = x1[i] + h1;
                A1[i + 1] = A1[i] + h1 * f(x1[i], A1[i]);
            }

введите сюда описание изображения

Valera
  • 191

0 Answers0