Battleships meets Minesweeper.
A game is played on an 8x8 grid of squares. Ten enemy military buildings each occupying one square and are hidden from the player. At the start of the game a UAV may reveal the location of a building. Either the building itself, or an adjacent square horizontally, vertically or diagonally. A player has 50 missiles (turns) to correctly target the ten installations by entering an x and y coordinate to fire at. The state of the board is shown to the player after each missile is launched as follows:
- "-" an unknown square.
- "H" a building that has been correctly targeted and hit.
- "x" a miss.
- "u" a UAV marker.
Write a program to play the game, positioning the buildings randomly in the grid.
Use this boilerplate code as a starting point:
Remember to add a comment before a subprogram, selection or iteration statement to explain its purpose.
10 military installations sighted. You have 50 cruise missiles to destroy them!
01234567
0--------
1--------
2--u-----
3------u-
4--u-----
5----u---
6--------
7--------
Enter the x target: 1
Enter the y target: 2
Miss. Only 49 missiles left.
01234567
0--------
1--------
2-xu-----
3------u-
4--u-----
5----u---
6--------
7--------
Enter the x target: 3
Enter the y target: 2
Miss. Only 48 missiles left.
01234567
0--------
1--------
2-xux----
3------u-
4--u-----
5----u---
6--------
7--------
Enter the x target: 2
Enter the y target: 1
Miss. Only 47 missiles left.
01234567
0--------
1--x-----
2-xux----
3------u-
4--u-----
5----u---
6--------
7--------
Enter the x target: 2
Enter the y target: 3
Miss. Only 46 missiles left.
01234567
0--------
1--x-----
2-xux----
3--x---u-
4--u-----
5----u---
6--------
7--------
Enter the x target: 3
Enter the y target: 1
That's a hit! You have now scored 1
01234567
0--------
1--xH----
2-xux----
3--x---u-
4--u-----
5----u---
6--------
7--------
Enter the x target: 1
Enter the y target: 3
That's a hit! You have now scored 2
01234567
0--------
1--xH----
2-xux----
3-Hx---u-
4--u-----
5----u---
6--------
7--------
Use these resources as a reference to help you meet the success criteria.
Run the program and play the game to check that your program has met the success criteria.
Check that you have: