Write and document a Python script ffc1.py which takes as command-line arguments the name of a multi-column file of integers and an ffs and outputs error messages including line-number and column-position if any column-entry (i) is not an integer or (ii) does not have the appropriate value as specified by the ffs. If no error is detected in the file, a message is printed to that effect. Your script must work on datafiles ffc1.dat, ffc2.dat, and ffc3.dat to produce the output given in typescript-file ffc1.script. You may assume that all given files have at least one row and the same number of entries in each row and that all given ffs are valid.
##### #--*# #-###
The lower left, lower right, upper left and upper right corners of the maze have co-ordinates (1,1), (n,1), (1,m), and (n,m), respectively, on the 2-D integer plane. A sequence of moves on the 2-D integer plane (possibly outside the maze) can be specified in a single-column file in which each line is a single string drawn from the set {"up", "down", "left", "right"}. Given a position (x,y) on the 2-D integer plane, each move is interpreted as follows:
Write and document a Python script maze1.py which takes as command-line arguments a maze file, a move file, and starting X- and Y-co-ordinates on the 2-D integer plane, computes the final position relative to the given move file, and prints this final position and its status, i.e., is it outside the maze or inside the maze and in a wall / in a corridor / at a goal. Note that you are only evaluating the status of the final position and not the individual moves, e.g., all moves need not result in positions that are in corridors or outside the maze. Your script must work on datafile maze1.dat, maze2.dat, move1.dat, and move2.dat to produce the output given in typescript-file maze1.script. You may assume that all maze and move files are valid.
In Question #1, you may find a boolean variable useful to keep track of whether or not you have detected an error in the given file.
In Question #2, you may find it useful to compute the final position relative to the start position and the given move file, compute the dimensions of the given maze, and then re-read the maze file (if necessary) to find the status of the final position.
######################################################### ## CS 2500 (Fall 2010), Assignment #2, Question #1 ## ## Script File Name: ffc1.py ## ## Student Name: Todd Wareham ## ## Login Name: harold ## ## MUN #: 8008765 ## #########################################################You do not have to develop your code on our CS departmental systems. However, as your code will be compiled and tested on our CS departmental systems as part of the assignment marking process, you should ensure that your code compiles and runs correctly on at least one of these systems.
Created: September 1, 2010
Last Modified: September 2, 2010