Ошибка: Индекс находился вне границ массива - C# (188076)

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

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

private void button1_Click(object sender, EventArgs e)
        {
            int[] a = new int[1000];
            int[] b = new int[1000];
            int n = Convert.ToInt32(textBox1.Text);
            
            // к 1 
            int c = int.Parse(textBox1.Text);
            string[] sNums1 = textBox2.Text.Split(',');
            string[] sNums2 = textBox3.Text.Split(',');
 
            if ((c>sNums1.Length) || (c > sNums2.Length))
            {
                MessageBox.Show("Длина массива не соответствует введенному элементу");
            return;
            }
            for (int i = 0; i < n; ++i)
                a = new int[c];
            for (int i = 0; i < c; i++)
                a[i] = int.Parse(sNums1[i]);
            
            // ко 2
 
            for (int i = 0; i < n; ++i)
                b = new int[c];
            for (int i = 0; i < c; i++)
                b[i] = int.Parse(sNums2[i]);
            
            // Само решение
            int pr = 1;
            for (int i = 0; i < n; ++i)
                pr = pr * (a[i] + b[n + 1 - i]);
            MessageBox.Show("Ответ = " + Convert.ToString(pr));
        }
В Чем ошибка не понимаю , пишет: Индекс находился вне границ массива.(Строка(pr = pr * (a[i] + b[n + 1 - i])) Почитал в интернете, но все равно не смог исправить , помогите )

Решение задачи: «Ошибка: Индекс находился вне границ массива»

textual
Листинг программы
pr *= a[i] + b[b.Length - i - 1];

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


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

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

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