The first game has a finished condition.
When no more discs can be inserted, the game finishes and it is considered a draw.
The following code shows one of the possible implementations:
... public boolean isFinished() { int numOfDiscs = 0; for (int col = 0; col < COLUMNS; ++col) { numOfDiscs += getNumberOfDiscsInColumn(col); } if (numOfDiscs >= COLUMNS * ROWS) { System.out.println("It's a draw"); return true; } return false; } ...