X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=TP5%2Fexo3%2Ffile_contigue.c;h=efdb67e0e768caab2040091c288e96985f88d659;hb=67b4409586ad416765bb6304cf50b576df64dfcb;hp=79085351501ee4b0d86fcdb2c8309aa7bed1177a;hpb=16d1d589590215264ffec1c7af6fee2af81fb351;p=Algorithmic_C.git diff --git a/TP5/exo3/file_contigue.c b/TP5/exo3/file_contigue.c index 7908535..efdb67e 100644 --- a/TP5/exo3/file_contigue.c +++ b/TP5/exo3/file_contigue.c @@ -14,57 +14,88 @@ #define LONG_FILE 25 typedef int element; -typedef struct { int tete; - int queue; - element tab[LONG_FILE]; } File; - +typedef struct { + int tete; + int queue; + element tab[LONG_FILE]; +} File; + File file_vide(void) -{ File f={0,0}; /* f.tete=f.queue=0 */ +{ + File f = { 0, 0, {0} }; /* f.tete=f.queue=0 */ return f; } -int est_vide(File f) { return f.tete==f.queue; } +int est_vide(File f) +{ + return f.tete == f.queue; +} -int est_pleine(File f) { return (f.queue+1)%LONG_FILE==f.tete; } +int est_pleine(File f) +{ + return (f.queue + 1) % LONG_FILE == f.tete; +} element tete(File f) /* ATTENTION: consulter la tête d'une File vide n'a pas de sens */ -{ if (est_vide(f)) { printf("Erreur - file vide\n"); exit(-1); } -return f.tab[f.tete]; +{ + if (est_vide(f)) { + printf("Erreur - file vide\n"); + exit(-1); + } + return f.tab[f.tete]; } -File enfiler(element e,File f) -{ if (est_pleine(f)) { printf("Erreur - file pleine\n"); exit(-1); } - f.tab[f.queue]=e; f.queue=(f.queue+1)%LONG_FILE; + +File enfiler(element e, File f) +{ + if (est_pleine(f)) { + printf("Erreur - file pleine\n"); + exit(-1); + } + f.tab[f.queue] = e; + f.queue = (f.queue + 1) % LONG_FILE; return f; } File defiler(File f) /* ATTENTION: supprimer la tête d'une File vide n'a pas de sens */ -{ if (est_vide(f)) { printf("Erreur - file vide\n"); exit(-1); } - f.tete=(f.tete+1)%LONG_FILE; +{ + if (est_vide(f)) { + printf("Erreur - file vide\n"); + exit(-1); + } + f.tete = (f.tete + 1) % LONG_FILE; return f; } -element defiler2(File * f) /*ATTENTION: la File est modifiée */ -/* ATTENTION: défiler une File vide n'a pas de sens */ -{ element e; - if (est_vide(*f)) { printf("Erreur - file vide\n"); exit(-1); } -e=f->tab[f->tete]; - f->tete=(f->tete+1)%LONG_FILE; +element defiler2(File * f) +/*ATTENTION: la File est modifiée */ +{ + element e; + /* ATTENTION: défiler une File vide n'a pas de sens */ + if (est_vide(*f)) { + printf("Erreur - file vide\n"); + exit(-1); + } + e = f->tab[f->tete]; + f->tete = (f->tete + 1) % LONG_FILE; return e; } -/*************************************************************************/ +/*************************************************************************/ int main() -{File p; - int i; +{ + File p; + int i; - p=file_vide(); + p = file_vide(); - for (i=0; i<20; i++) p=enfiler(i,p); + for (i = 0; i < 20; i++) + p = enfiler(i, p); - for (i=0; i<25; i++) printf("%d\n",defiler2(&p)); + for (i = 0; i < 25; i++) + printf("%d\n", defiler2(&p)); } -/********************************************************************/ +/********************************************************************/