Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# C# Collections Arrays Jagged Arrays

Khue Luu
Khue Luu
5,148 Points

Index was outside the bounds of the array

Please help me with this exercise. I got the error "Index was outside the bounds of the array" even when I removed the equal sign in the for loop condition. Thanks!

Math.cs
namespace Treehouse.CodeChallenges
{
    public static class MathHelpers
    {
        public static int[][] BuildMultiplicationTable(int maxFactor)
        {
            int[][] table = new int[][] {};
            int i;
            int j;
            for ( i = 0; i <= maxFactor; i++) 
            {   
                for ( j = 0; j <= maxFactor; j++) 
                {
                    table[i][j] = i*j; 
                }
            }
            return table;
        }
    }
}
Khue Luu
Khue Luu
5,148 Points

The requirement of the exercise: "Return a multiplication table consisting of an array of arrays. The table should contain all of the products of integers from 0 to maxFactor."

1 Answer

Steven Parker
Steven Parker
231,269 Points

The array size must always be one larger than the highest value that will be used to index it.

Also, when creating jagged arrays, you create the master first with a single dimension, then each element will get another one-dimension array. Both the master and the "row" arrays will need to be sized appropriately when they are created.

Khue Luu
Khue Luu
5,148 Points

Thanks so much for your help :)