Ошибка IndexOutOfRangeException в присвоении значения массиву - C#

Узнай цену своей работы

Формулировка задачи:

Привет, разбираюсь с сигналами в C#.Выходит ошибка: Необработанное исключение типа "System.IndexOutOfRangeException" в TDL of ACS.exe Дополнительные сведения: Индекс находился вне границ массива. Массив x необходим для дальнейшей работы
 
            double A = 0.6;
            double dt = 0.01;
            const int N = 10;
            double f = 0.5;
            double T = 1 / f;
            double F = Math.PI / 4;
            int j = 1;
            double k = 0.5;
            double b = 1;
            double c = 0.3;
            int l = 1;
            double [] x;
            x = new double[N];
            
            for (double i = 1; i < N; ) 
            {
                double y = A * Math.Sin(2*Math.PI*f*i);
                if (y >= 0)
                {
                    y = A;
                }
                else
                {
                    y = 0;
                }
                this.chart1.Series[0].Points.AddXY(i, y);
                x[j] = y;
                j++;
                i = i + dt;
            }

Решение задачи: «Ошибка IndexOutOfRangeException в присвоении значения массиву»

textual
Листинг программы
double i = 1;
for (int j = 0; j < 10; j++)
{
    double y = A * Math.Sin(2 * Math.PI * f * i);
    if (y >= 0)
    {
        y = A;
    }
    else
    {
        y = 0;
    }
    this.chart1.Series[0].Points.AddXY(i, y);
    x[j] = y;
    i += dt;
}

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


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

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

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