TP5: feed all exercices code skeleton to Lindent
[Algorithmic_C.git] / TP5 / exo2 / pile_realloc.c
index a41cdb74426521572d69b80b245a9896ca1835b8..cef3e173884bc54a3442972570fcd9490446c569 100644 (file)
@@ -1,65 +1,87 @@
 /********************************************************************/
 /*           Implantation contiguë d'un type Pile d'entiers         */
 /*           On rallonge le tableau par realloc quand il est plein  */
-/********************************************************************/                 
+/********************************************************************/
 #include <stdio.h>
 #include <stdlib.h>
 
 #define LONG_PILE 5
 typedef int element;
-typedef struct {       int        nbre;
-                        int        taille_tab;
-                       element    *tab; } Pile;
-       
+typedef struct {
+       int nbre;
+       int taille_tab;
+       element *tab;
+} Pile;
+
 Pile pile_vide(void)
-{Pile p; p.nbre=0; p.taille_tab=LONG_PILE;
- p.tab=(element *)calloc(p.taille_tab, sizeof(element));
- return p;
+{
+       Pile p;
+       p.nbre = 0;
+       p.taille_tab = LONG_PILE;
+       p.tab = (element *) calloc(p.taille_tab, sizeof(element));
+       return p;
 }
 
 int est_vide(Pile p)
-{return p.nbre==0;             /* ou return !p.nbre; */
+{
+       return p.nbre == 0;     /* ou return !p.nbre; */
 }
 
 element sommet(Pile p)
 /* ATTENTION: consulter le sommet d'une pile vide n'a pas de sens */
-{if (est_vide(p)) { printf("Erreur - pile vide\n"); exit(-1); }
- return p.tab[p.nbre-1];
+{
+       if (est_vide(p)) {
+               printf("Erreur - pile vide\n");
+               exit(-1);
+       }
+       return p.tab[p.nbre - 1];
 }
 
-Pile empiler(element e,Pile p) 
-{if (p.nbre==p.taille_tab)
-    {printf("pile pleine %d - on la rallonge!\n",p.taille_tab); 
-     p.taille_tab *=2;
-     p.tab=realloc(p.tab, p.taille_tab*sizeof(element));
-    }
-  p.tab[p.nbre++]=e;
-  return p;
+Pile empiler(element e, Pile p)
+{
+       if (p.nbre == p.taille_tab) {
+               printf("pile pleine %d - on la rallonge!\n", p.taille_tab);
+               p.taille_tab *= 2;
+               p.tab = realloc(p.tab, p.taille_tab * sizeof(element));
+       }
+       p.tab[p.nbre++] = e;
+       return p;
 }
 
 Pile depiler(Pile p)
 /* ATTENTION: supprimer le sommet d'une pile vide n'a pas de sens */
-{if (est_vide(p)) { printf("Erreur - pile vide\n"); exit(-1); }
- p.nbre--;
- return p;
+{
+       if (est_vide(p)) {
+               printf("Erreur - pile vide\n");
+               exit(-1);
+       }
+       p.nbre--;
+       return p;
 }
 
-element depiler2(Pile *p)      /* ATTENTION: la pile est modifiée */
-/* ATTENTION: dépiler une pile vide n'a pas de sens */
-{if (est_vide(*p)) { printf("Erreur - pile vide\n"); exit(-1); }
- return p->tab[p->nbre-- -1];
+element depiler2(Pile * p)
+{                              /* ATTENTION: la pile est modifiée */
+       /* ATTENTION: dépiler une pile vide n'a pas de sens */ if (est_vide(*p)) {
+               printf("Erreur - pile vide\n");
+               exit(-1);
+       }
+       return p->tab[p->nbre-- - 1];
 }
-/********************************************************************/ 
+
+/********************************************************************/
 
 int main()
-{Pile p;
- int i;
+{
+       Pile p;
+       int i;
 
p=pile_vide();
      p = pile_vide();
 
- for (i=0; i<20; i++) p=empiler(i,p);
+       for (i = 0; i < 20; i++)
+               p = empiler(i, p);
 
- for (i=0; i<25; i++) printf("%d\n",depiler2(&p));
+       for (i = 0; i < 25; i++)
+               printf("%d\n", depiler2(&p));
 }
-/********************************************************************/ 
 
+/********************************************************************/