From 5ba35ccb4226a60ee523d0ee82443dc5fcee7958 Mon Sep 17 00:00:00 2001
From: Louis Malevez <louis.malevez@student.uclouvain.be>
Date: Wed, 22 Apr 2020 16:01:52 +0200
Subject: [PATCH] Fonctions pour la gestion de la liste

---
 Fonction_liste.h | 68 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)
 create mode 100644 Fonction_liste.h

diff --git a/Fonction_liste.h b/Fonction_liste.h
new file mode 100644
index 0000000..59e0ab6
--- /dev/null
+++ b/Fonction_liste.h
@@ -0,0 +1,68 @@
+#ifndef PROJET_Q4_GROUPE_O4_PRIMEF_H
+#define PROJET_Q4_GROUPE_O4_PRIMEF_H
+//
+// Created by Louis Malevez on 22-04-20.
+//
+#include <stdio.h>
+#include <stdlib.h>
+/*  Structure représentant un élément de la liste. */
+typedef struct elem
+{int value;
+    struct elem *prev;
+    struct elem *next;
+} elem ;
+/*  Structure d'accès à la liste. */
+typedef struct dblist
+{elem *first;
+    elem *last;
+}dblist;
+
+void Init(struct dblist *l) {// fonction qui initialise une liste
+    l->first = NULL;
+    l->last = NULL;
+}
+void Clear(struct dblist *l)//fonction qui efface la liste
+{
+    elem *tmp;
+    elem *pelem = l->first;
+    while(pelem)
+    {
+        tmp = pelem;
+        pelem = pelem->next;
+        free(tmp);
+    }
+    l->first = NULL;
+    l->last = NULL;
+}
+void PushBack(struct dblist *l, int val)// fonction qui ajoute un élément a la fin de la liste
+{
+    elem *nouv = malloc(sizeof(elem));
+    if(!nouv) exit(EXIT_FAILURE);
+    nouv->value = val;
+    nouv->prev = l->last;
+    nouv->next = NULL;
+    if(l->last) l->last->next = nouv;
+    else l->first = nouv;
+    l->last = nouv;
+}
+void View(struct dblist l)//permet de parcourir la liste depuis le début, on s'en sert pas enft
+{
+    elem *pelem = l.first;
+    while(pelem)
+    {
+        printf("%d\n",pelem->value);
+        pelem = pelem->next;
+    }
+}
+void wfile(struct dblist l,FILE*file)//fonction qui lit et écrit ds un fichier les élément de la liste
+{
+    elem *pelem = l.first;
+    while(pelem)
+    {
+        fprintf(file,"%d ",pelem->value);
+        pelem = pelem->next;
+    }
+}
+
+
+#endif //PROJET_Q4_GROUPE_O4_PRIMEF_H
-- 
GitLab