Do the Even questions from section 6.6.3.

(It wouldn't hurt if you studied the answers to the odd questions as well.)

In addition, do the following problem:

  1. Diagram a finite-state machine that recognizes strings of the form:

        ((ab)*c+d*)*
    

    Recall that in regular expression notation, () group symbols together, * means '0 or more' of the previous symbol, and + means '1 or more' of the previous symbol.

  2. Could IsDigit have used the idea from the OR example (6.2.3) rather than coding two CMPs and a TEST? Why/Why not?


This assignment is Level 3.