Compulsory Task 1 Create a file named minesweeper.py Create afunction that takes a grid of # and -, where each hash (#)represents a mine and each dash (-) represents a mine-free spot.Return a grid, where each dash is replaced by a digit, indicatingthe number of mines immediately adjacent to the spot i.e.(horizontally, vertically, and diagonally). Example of an input: [["-", "-", "-", "#", "#"],
["-", "#", "-", "-", "-"],
["-", "-", "#", "-", "-"],
["-", "#", "#", "-", "-"],
["-", "-", "-", "-", "-"] ]
Example of the expected output: [ ["1", "1", "2", "#", "#"],
["1", "#", "3", "3", "2"],
["2", "4", "#", "2", "0"],
["1", "#", "#", "2", "0"],
["1", "2", "2", "1", "0"] ]
Here is a tip. When checking adjacent positions to a specificposition in the grid, the following table might assist you indetermining adjacent indexes: NW position = current_row - 1current_col - 1 N position = current_row - 1 current_col NEposition = current_row - 1 current_col + 1 W position = current_rowcurrent_col - 1 Current position = current_row current_col Eposition = current_row current_col + 1 SW position = current_rowcurrent_col + 1 S position = current_row +1 current_col SE position= current_row + 1 current_col + 1 Also ensure that when checkingadjacent positions in the grid that you take into account that onthe edges of the grid, you may go out of bounds. Lastly, you couldmake use of the enumerate function in Python to keep track of theindex points and values without having to create a count variableand explicitly iterate the count variable to keep track of thecurrent row or column index.
Compulsory Task 1 Create a file named minesweeper.py Create a function that takes a grid of # and -, where each hash (#)
-
- Site Admin
- Posts: 899603
- Joined: Mon Aug 02, 2021 8:13 am