Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C#] Зубчатый массив


Автор: DasBit 4.9.2011, 15:04
Доброго времени суток. Цель задачи создать зубчатый массив средствами рандома (Заполнять не обязательно) и вывести на экран. Должно получиться что-то типа этого:

Код

0
0 0    0    0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0


Вот мой код:

Код

using System;
class main
{
    static void Main()
     {
         Random R = new Random();

         int[][]array = new int [R.Next(5)][];
         for (int i = 0; i < array.Length; i++)
              array[i] = new int[R.Next(5)];

         for (int i = 0; i < array[i].Length; i++)
              {
                for (int j = 0; j < array[j].Length; j++)
                     {
                         Console.Write(array[i][j] + " ");
                     }
                Console.WriteLine();
              }
         Console.Read();
     }
}


Программа вылетает, говорит что перегруз массива. Need Help 

Автор: Silent 5.9.2011, 07:52
Программа ругается на не перегруз массива (хз что имелось ввиду), а на доступ к несуществующим элементам. Корректный код:
Код

using System;
class main
{
    static void Main()
    {
        Random R = new Random();
        int[][] array = new int[R.Next(5)][];
        for (int i = 0; i < array.Length; i++)
            array[i] = new int[R.Next(5)];
        for (int i = 0; i < array.Length; i++)   //array.Length, раз
        {
            for (int j = 0; j < array[i].Length; j++)   //array[i].Length, два
            {
                Console.Write(array[i][j] + " ");
            }
            Console.WriteLine();
        }
        Console.Read();
    }
}

Автор: DasBit 5.9.2011, 14:27
Хм...действительно. Я и не туда смотрел. Спасибо большое, заработало  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)