Assignment TOC
Assignment TOC
Requirements:
1. Implement both the DFA and the NFA using Python Programming Language.
2. The program should:
Submission Guidelines
Your submission should be in the form of a well-structured report. The report must include the
following sections:
1. Title Page
❖ Assignment Title: Vending Machine Simulation Using DFA, NFA, and Python
❖ Group ID
❖ Your Names
❖ Student IDs
❖ Course Name and Code
❖ Instructor’s Name
❖ Submission Date
2. Table of Contents
❖ Provide a clear table of contents with proper headings and page numbers.
3. Introduction
❖ Briefly describe the purpose of the assignment.
❖ Explain the concept of vending machines and how automata theory applies to
simulate their behavior.
4. Problem Statement
❖ Clearly state the given problem, item prices, and the machine's behavior.
6. NFA Design
❖ Present all state diagrams for the Nondeterministic Finite Automaton (NFA).
5. NFA to DFA Conversion
❖ Show the conversion process in detail using subset construction method.
7. Python Implementation
❖ Include your Python code simulating both the DFA and NFA.
❖ Provide clear comments within the code to explain its functionality.
8. Test Cases and Results
❖ Perform multiple test cases to demonstrate the correctness of your simulation.
❖ Include screenshots or output logs showing different scenarios:
▪ Successful purchases
▪ Change returned
▪ Invalid values rejected
▪ Exact payment scenarios
9. Conclusion
❖ Summarize your learning experience.
❖ Discuss any challenges faced and how you overcame them.
10. References
❖ Cite any resources, textbooks, research papers, or online materials used in
completing the assignment. (If any)