Connect 4 C#

  • #1
SGJ
10
0

Homework Statement


When I try and play it, it says that the Index out of range system was unhandled. I am pretty sure it is the j loop. Please help. In the game Connect 4, you can win diagonally, the grid is 6 squares down and 7 across. (5 positions down, 6 positions across including 0.)

Homework Equations


privateBoolean diagonalWinnerUp()//The name of the loop

{

Boolean winner = false;//The winner is set to false

{

for (int i = 0; i < 7; i++)//nested for loop. i starts at zero, it is incremented until it reaches 7

{

for (int j = 5; j < 8; j++)//j starts at 5. it will continue 8 times so that when 3 is subtracted from j(5) it can equal five.

{

if (board[j,i] == 1 && board[j - 1, i + 1] == 1 && board[j - 2, i + 2] == 1 && board[j - 3, i + 3] == 1 || board[j,i] == 2 && board[j - 1, i + 1] == 2 && board[j - 2, i + 2] == 2 && board[j - 3, i + 3] == 2)//Upward diagonal winner check

{

winner = true;

if (board[j, i] == 1)

{

player1_wins = 1;

}

else

{

player2_wins = 2;

}

}

}

}

}

return winner;

}


The Attempt at a Solution

 

Answers and Replies

  • #2
35,248
11,500
Your i values go up to 6, but you try to access i+3 in the second dimension.

You also miss solutions including pieces in j=0 to j=2.
 

Related Threads on Connect 4 C#

Replies
12
Views
4K
  • Last Post
Replies
0
Views
1K
Replies
0
Views
3K
Replies
30
Views
3K
Replies
7
Views
2K
Replies
3
Views
5K
  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
0
Views
1K
  • Last Post
Replies
4
Views
2K
  • Last Post
Replies
0
Views
4K
Top