Your move

Your move

Processing grid references to indexes.

Popular games like chess and battleships are played on a grid of squares that can be referred to with coordinates such as A1, B3, C5 etc. The user would input the coordinate to make a move with a piece on that square. However, for processing it is easier to work with just numbers instead of a combination of letters and numbers. This program takes an input and creates a list of the numerical grid reference. E.g. A1 is [1, 1], B3 is [2, 3] and C5 is [3, 5].

Make


Write a program that converts a grid reference, e.g. C5 to a list of two coordinates, e.g. [3, 5].

Use this boilerplate code as a starting point:

Success Criteria

Remember to add a comment before a subprogram, selection or iteration statement to explain its purpose.

Complete the subprogram called `get_move` that:

  1. Prompts the user to enter their move.
  2. Strips any additional whitespace.
  3. Converts the input to uppercase.
  4. Returns the string.

Complete the subprogram called `get_indexes` that:

  1. Takes a parameter `move` which is the string output from `get_move`.
  2. Returns the coordinates as a list of two indexes.

Complete the `main program` so that:

  1. It calls the `get_move` function.
  2. Outputs the coordinate list.

Typical inputs and outputs from the program would be:

Enter your move: A1

[1, 1]


Enter your move: B3

[2, 3]


Enter your move: c5

[3, 5]

Knowledge Organiser

Use these resources as a reference to help you meet the success criteria.

Programming guide:

Evaluate


Run the unit tests below to check that your program has met the success criteria.

Enter your move: c8

[3, 8]

Enter your move: f6

[6, 6]

Enter your move: G4

[7, 4]

Enter your move: d3

[4, 3]

Check that you have:

  • Used comments within the code to describe the purpose of subprograms, conditions and iterations.
  • Used meaningful identifier names. That means the names of subprograms and variables indicate what they are for.