| V I S U A L I Z Z A D I S C U S S I O N E |
| feeb |
Inserito il - 11/06/2004 : 14:13:12 non ho postato questo messaggio nel thread 'automa riconoscitore' per non creare confusione, e' un fsa che dovrebbe essere anche sul semeraro e che ho usato provare a fare la conversione automa->codice c. i commenti dovrebbero dire abbastanza. se qualcuno mi dice che ci sono cazzate etc. gli offro un caffe'.
Allegato: fsa.txt 2,36 KB |
| 3 U L T I M E R I S P O S T E (in alto le più recenti) |
| Fabio |
Inserito il - 11/06/2004 : 20:26:36 Qualcuno sa se domani Ferilli è al dipartimento? |
| feeb |
Inserito il - 11/06/2004 : 19:30:09 per la storia della enum hai ragione, negli esempi non veniva usata e quindi all'inizio ho provato a usare degli unsigned int per gli stati, poi visto che avevo problemi a usarli negli switch ho cercato un workaround e sono andato a parare con i define. comunque grazie per le dritte, appena ci si trova in facolta' ti offro qualcosa (o me la offri tu se mi manca la materia prima ) ci si sente! |
| nicux |
Inserito il - 11/06/2004 : 18:33:07 Citazione: Messaggio inserito da feeb
non ho postato questo messaggio nel thread 'automa riconoscitore' per non creare confusione, e' un fsa che dovrebbe essere anche sul semeraro e che ho usato provare a fare la conversione automa->codice c. i commenti dovrebbero dire abbastanza. se qualcuno mi dice che ci sono cazzate etc. gli offro un caffe'.
Allegato: fsa.txt 2,36 KB
è buono ma poco elegante.
Puoi ad esempio invertire l'approccio un switch che scandisce gli stati e per ogni stato (dato che l'alfabeto di ingresso ha cardinalità 2) utilizzare il costrutto if:
- le linee di codice si riducono drasticamente - enfatizzi gli stati presenti (normalmente un alfabeto è molto più numeroso degli stati)
poi (ma questo è una questione di gusti) invece di utilizzare le define puoi sfuttare l'enum, ad esempio:
enum{Q0,Q1,Q2,Q3,...,Qn}stati;
|
|
|