public class MainClass : Object { public static void main(string[] args) { bool done = false; int tries = 10; int result = 3; string[,] board = create_board(); show_board(board); do { string guess = make_guess(); bool valid = validate_input(guess); if (valid == true) { string text = check_guess(guess, board); stdout.printf("%s\n", text); if (text == "You hit..!") { result--; if (result == 0) { stdout.printf("You won..!\n"); break; } } tries--; done = count_tries(tries); } } while (!done); } public static string[,] create_board() { string[,] game_board = new string[5, 5] { {"false", "false", "false", "false", "false"}, {"false", "false", "false", "false", "false"}, {"false", "true", "true", "true", "false"}, {"false", "false", "false", "false", "false"}, {"false", "false", "false", "false", "false"} }; return game_board; } public static void edit_board(int x, int y, string[,] board) { board[x, y] = "false"; } public static void show_board(string[,] board) { stdout.printf(" "); for (int num = 1; num <= 5; num++) { stdout.printf("%-6d", num); } stdout.printf("\n"); for (int x = 0; x < board.length[0]; x++) { stdout.printf("%d ", x + 1); for (int y = 0; y < board.length[1]; y++) { stdout.printf("%-6s", board[x, y]); } stdout.printf("\n"); } } public static string make_guess() { stdout.printf("Enter a coordinate: "); string guess = stdin.read_line(); return guess; } public static bool validate_input(string guess) { bool valid = true; int x = guess.substring(0,1).to_int(); int y = guess.substring(2,1).to_int(); if (x < 1 || x > 5 || y < 1 || y > 5) { stdout.printf("Your coordinate have to be between 1,1 and 5,5...\n"); valid = false; } return valid; } public static string check_guess(string guess, string[,] board) { int x = guess.substring(0,1).to_int() - 1; int y = guess.substring(2,1).to_int() - 1; string text = ""; if (board[y, x] == "true") { text = "You hit..!"; edit_board(y, x, board); show_board(board); } else { text = "You miss..!"; } return text; } public static bool count_tries(int tries) { bool done = false; if (tries == 0) { stdout.printf("You have lost...\n"); done = true; } else if (tries == 1) { stdout.printf("You have %d try left...\n", tries); } else { stdout.printf("You have %d tries left...\n", tries); } return done; } }