C# C# Collections Arrays Jagged Arrays

helpme

what should go to in the part where it isdeclaring 2 dimension array? I get compiler error

Math.cs
using System;
namespace Treehouse.CodeChallenges
{
    public static class MathHelpers
    {
        public static int[][] BuildMultiplicationTable(int maxFactor)
        {
           Array[][] array = new Array[maxFactor][];
            for(int i=0; i<=maxFactor; i++)
            {
                for(int j=0; j<=maxFactor; j++)
                {
                    array[i][j] = i*j;
                }
            }
        }
    }
}

2 Answers

Steven Parker
Steven Parker
173,784 Points

Here's a few hints:

  • the array size must be larger than the highest index used
  • each row must be separately initialized
  • the function must return the completed table
namespace Treehouse.CodeChallenges
{
    public static class MathHelpers
    {
        public static int[][] BuildMultiplicationTable(int maxFactor)
        {
            int[][] sheet = new int[maxFactor+1][];

            for(int i=0; i<=maxFactor; i++)
            {
                for(int j=0; j<=maxFactor; j++)
                {
                     sheet[i][j] = i*j;

                }
            }
            return sheet;
        }
    }
}

how about this i got error "Object reference not set to an instance of an object"

Steven Parker
Steven Parker
173,784 Points

It looks like you implemented 2 of my 3 hints, but you still need to initialize each row by creating an array for the 2nd dimension.

You might want to take another look at the Jagged Arrays video, particularly around 4:40 where the rows are created.