Необработанное исключение типа "System.IndexOutOfRangeException" - C#

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

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

задание: Заданы два одномерных массива действительных чисел различных размеров. Записать алгоритм объединения их в один массив, который включает второй массив между k-м и (k+1)-м элементами первого. Выдает ошибку: Необработанное исключение типа "System.IndexOutOfRangeException" в ConsoleApplication16.exe помогите отладить код!!!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication278
{
    class Program {
 
        static void Main(string[] args)
        {
 
            Console.Write("n? ");
            var n = int.Parse(Console.ReadLine());
            int[] a = new int[n];
            var rnd = new Random();
            Console.WriteLine("massiv: ");
            for (var i = 0; i < n; ++i) Console.Write("{0} ", a[i] = rnd.Next(100));
            for (var i = 0; i < n; ++i)
            {
                Console.Write("\nf? ");
                var f = int.Parse(Console.ReadLine());
                int[] b = new int[f];
                var rd = new Random();
                Console.WriteLine("massiv: ");
                for (var s = 0; s < f; ++s) Console.Write("{0} ", b[i] = rnd.Next(100));
                for (var s = 0; s < f; ++s)
                {
                    Console.Write("\nc? ");
                    var c = int.Parse(Console.ReadLine());
                    int[] d = new int[c];
                    var r = new Random();
                    Console.WriteLine("massiv: ");
                    for (var h = 0; h < c; ++h) Console.Write("{0} ", d[i] = rnd.Next(100));
                    for (var h = 0; h < c; ++h)
                    {
                        Console.Write("\nk? ");
                        var k = int.Parse(Console.ReadLine());
                        for (var g = 0; g < k; ++g)
                        {
                            d[i] = a[i];
                        }
                        for (i = k; i < k + f; i++)
                        { 
                            d[i] = b[i-k];
                        }
                        for (i = k + f; i <= n + f; i++)
                        {
                            d[i] = a[i-k];
                        }
                        Console.WriteLine("Result ");
                        for (i = 0; i < n + f; i++)
                            Console.WriteLine(" ", d[i]);

                        Console.ReadLine();
                    }
 
                }
            }
        }
    }
}

Решение задачи: «Необработанное исключение типа "System.IndexOutOfRangeException"»

textual
Листинг программы
var res= VisualTreeHelper.HitTest(myCanvas, pt);

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


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

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

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