0% found this document useful (0 votes)
123 views2 pages

Automata Project Final

The project aims to design and implement a finite automaton (DFA or NFA) for validating strings based on a defined pattern, such as email addresses or binary strings. Deliverables include documentation of the problem definition, automaton design, test cases, a user-friendly program, and a presentation. The submission deadline is May 24, 2025, and all materials must be submitted as a ZIP file.

Uploaded by

Mark lauren Duay
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
123 views2 pages

Automata Project Final

The project aims to design and implement a finite automaton (DFA or NFA) for validating strings based on a defined pattern, such as email addresses or binary strings. Deliverables include documentation of the problem definition, automaton design, test cases, a user-friendly program, and a presentation. The submission deadline is May 24, 2025, and all materials must be submitted as a ZIP file.

Uploaded by

Mark lauren Duay
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Project Title: String Validation using Finite Automata

Objective:

To design and implement a simple finite automaton (DFA or NFA) to validate strings for a given
pattern or rule (e.g., email addresses, binary strings divisible by 3, or valid identifiers in
programming).

Instructions:

1. Project Overview:

 Define a string pattern or rule (e.g., validate binary strings ending with "101").
 Design a deterministic or non-deterministic finite automaton (DFA/NFA) that
accepts strings following this rule and rejects others.
 Implement the automaton in a simple program that takes a string as input and
outputs whether it is valid or invalid.

2. Deliverables:

 Documentation:
a. Problem definition (e.g., what pattern the string must follow).
b. Explanation of the automaton design, including state diagrams and transition
tables.
c. Test cases demonstrating valid and invalid strings.
 Program:
a. A simple program that implements the automaton.
b. Program must be user-friendly and handle invalid input gracefully.
 Presentation:
a. A 3-5-minute demonstration explaining the automaton and showing the
program in action.

3. Submission Guidelines:
o Submit all deliverables as a ZIP file.
o Include a README file explaining how to run the program.
o Deadline: May 24, 2025
Rubrics:

Needs
Excellent (10 Satisfactory (6
Criteria Good (8 points) Improvement (4
points) points)
points)
Clearly defined Well-defined
Problem Simple or lacks Vague or poorly
string pattern or with minor
Definition clarity. defined rule.
rule. ambiguities.
Accurate and Mostly accurate Errors in state State diagram is
Automaton
complete state with minor diagram or unclear or
Design
diagram. errors. incomplete. incorrect.
Fully functional, Partially Non-functional or
Program Functional with
user-friendly, error- functional or poorly
Implementation minor issues.
free. lacks usability. implemented.
Covers basic
Comprehensive and Minimal test No meaningful
Test Cases cases, lacks
covers edge cases. cases. test cases.
edge cases.
Engaging, well- Somewhat
Clear and Unclear or lacks
Presentation structured, and disorganized or
structured. structure.
concise. unclear.

Example Ideas for String Patterns per Group:

1. Binary strings divisible by 3.


2. Valid email addresses.
3. Strings starting with "a" and ending with "b."
4. Valid identifiers in a programming language (e.g., letters followed by alphanumeric
characters).
5. Strings that contain "010" as a substring.

You might also like