aboutsummaryrefslogtreecommitdiff
path: root/semestre 3/structures des données/tme/tme6-11/Chaine.h
diff options
context:
space:
mode:
authorAnhgelus Morhtuuzh <william@herges.fr>2025-11-21 18:37:48 +0100
committerAnhgelus Morhtuuzh <william@herges.fr>2025-11-21 18:37:48 +0100
commit20fc727d4f954eb2109b71a7686c3107fdfa4bbf (patch)
treea5613db97e67d8968c7d622b605ed530755176bb /semestre 3/structures des données/tme/tme6-11/Chaine.h
parent341fc63ff791e08c7d0a00346080067c9bd1d5dd (diff)
Cours du 3 au 21 novembre
ce qui fait 3 semaines en philo et une semaine en info
Diffstat (limited to 'semestre 3/structures des données/tme/tme6-11/Chaine.h')
-rw-r--r--semestre 3/structures des données/tme/tme6-11/Chaine.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/semestre 3/structures des données/tme/tme6-11/Chaine.h b/semestre 3/structures des données/tme/tme6-11/Chaine.h
new file mode 100644
index 0000000..3539be7
--- /dev/null
+++ b/semestre 3/structures des données/tme/tme6-11/Chaine.h
@@ -0,0 +1,31 @@
+#ifndef __CHAINE_H__
+#define __CHAINE_H__
+#include<stdio.h>
+
+/* Liste chainee de points */
+typedef struct cellPoint{
+ double x,y; /* Coordonnees du point */
+ struct cellPoint *suiv; /* Cellule suivante dans la liste */
+} CellPoint;
+
+/* Celllule d une liste (chainee) de chaines */
+typedef struct cellChaine{
+ int numero; /* Numero de la chaine */
+ CellPoint *points; /* Liste des points de la chaine */
+ struct cellChaine *suiv; /* Cellule suivante dans la liste */
+} CellChaine;
+
+/* L'ensemble des chaines */
+typedef struct {
+ int gamma; /* Nombre maximal de fibres par cable */
+ int nbChaines; /* Nombre de chaines */
+ CellChaine *chaines; /* La liste chainee des chaines */
+} Chaines;
+
+Chaines* lectureChaines(FILE *f);
+void ecrireChaines(Chaines *C, FILE *f);
+void afficheChainesSVG(Chaines *C, char* nomInstance);
+double longueurTotale(Chaines *C);
+int comptePointsTotal(Chaines *C);
+
+#endif