I'd break it down to steps.
Store and validate a matrix. You're not describing a grid, you're describing nxn matrices. Design one or more methods to parse data, store, print, and diagnose nxm matrices of any size. Make all that as flexible and generic as you need, test the functions rigorously, and then proceed to a next step.
Copy matrix A to martrix B. Write utilities to copy from one matrix to another. Determine fault situations, such as what is impossible, or cases where data is to be lost. Also determine which rules you need to be flexible, such as what information to populate extra locations when you copy a smaller matrix into a larger one, or whether you will be dynamically allocating space for new matrices.
Stuff like that.
|