28 int sont_dans_l_ensemble(
int n,
Ensemble * ens, ... ){
34 res &= est_dans_l_ensemble( ens, va_arg(pile,
int) );
40 int l_ensemble_est_egal(
int n,
const Ensemble* ens, ... ){
45 Ensemble * e = creer_ensemble( NULL, NULL, NULL );
49 ajouter_element( e, va_arg(pile,
int) );
52 res = comparer_ensemble( ens, e );
53 liberer_ensemble( e );
59 void action_test_transitions_automate(
60 int origine,
char lettre,
int fin,
void* data
62 int * res = (
int*) data;
66 int test_transitions_automate(
int nb_transitions,
const Automate* aut, ... ){
71 if( nb_transitions != nb ){
return 0; }
74 for (i=0;i<nb_transitions;i++){
75 int origine = va_arg(pile,
int);
76 char lettre = (char) va_arg(pile,
int);
77 int fin = va_arg(pile,
int);
80 aut, origine, lettre, fin
90 int test_creer_automate_deterministe(){
110 if( ! test_creer_automate_deterministe() ){
return 1; }
int est_une_transition_de_l_automate(const Automate *automate, int origine, char lettre, int fin)
Renvoie 1 si ('origine', 'lettre', 'fin') est une transition de l'automate et 0 sinon.
void pour_toute_transition(const Automate *automate, void(*action)(int origine, char lettre, int fin, void *data), void *data)
La fonction passe en revue toutes les transitions de l'automate et appelle la fonction passée en para...