| |
| META TOPICPARENT |
name="CSC221SylS2024" |
Programming Review Lab: Finite State Machines
Learning Objectives |
| | A finite state machine is a simple machine that will either accept or reject an input. The Wikipedia article can give you an overview and so can many other resources on the Internet. To write a program for a finite state machine can be a complex task. However, to simulate one is MUCH easier. This program is to simulate a FSM
Assignment
- Complete the program that simulates a finite state machine.
|
|
< < |
- You are provided with the following. All files are found on the GitHub classroom
. The invite for this assignment is: https://classroom.github.com/a/7DSlArMs
|
> > |
- You are provided with the following. All files are found on the on the shared Google Drive. Future code will probably be shared using GitHub.
|
| |
-
- Transition.java. This class defines a single transition. Given a state and an input what is the next state.
- FSMDriver.java. This class contains a very simple driver. It instantiates a finite state machine from a file and then tests one string for acceptance.
- Simple. This is an example of a data file as follows
|
| |
-
- Transitions. The shell for a list of transitions with methods and field variables you need to complete. See comments within the code for more instructions.
- Be sure to modify the comments as appropriate and maintain good programming techniques
Submission instructions |
|
< < |
- Complete the SDR. Be aware that the form has changed! Include at least one more set of tests for your own machine along with any other tests you think are appropriate. Your testing report should probably not be more than a page and could be less.
|
> > |
- Complete the SDR. Include at least one more set of tests for your own machine along with any other tests you think are appropriate. Your testing report should probably not be more than a page and could be less.
|
| |
- Combine your SDR and all of your .java and testing files into one zip folder
- Submit the zip folder on Canvas by the due data specific there.
Restriction: |