das solltest Du schon lieber selber machen ... der Programmierteil ist das wenigste ... ich glaube, damit sollte Dir (falls für Studium etc.) die Automaten-Theorie nähergebracht werden ...
also besorg Dir den Algorithmus für einen der genannten Automaten und fertig isses ... Du solltest natürlich schon ein bißchen C++ beherrschen !
mfG,
Markus.