00001 //--------------------------------------------------------------------------- 00002 #ifndef ListeH 00003 #define ListeH 00004 //--------------------------------------------------------------------------- 00005 #endif 00006 00007 // GESTION D'UNE LISTE DOUBLEMENT CHAINEE 00008 00009 #include <iostream.h> 00010 #include <conio.h> 00011 #include <stdlib.h> 00012 #include <stdio.h> 00013 #include <math.h> 00014 00018 typedef struct cellule 00019 { 00020 double Abscisse; 00021 double Ordonne; 00022 struct cellule *precedent, *suivant; 00023 }CELLULE; 00024 00028 class Liste 00029 { 00030 public : 00035 Liste (); 00036 00041 ~Liste (); 00042 00048 bool Vide (); 00049 00054 InsereTete (double x, double y); 00055 00060 InsereQueue (double x, double y); 00061 00067 int Comptage(); 00068 00075 double Element(int i); 00076 00082 double Maximum(); 00083 00089 double Minimum(); 00090 00096 double Moyenne(); 00097 00103 double Variance(); 00104 00113 double Mediane(int taille); 00114 00123 double Quartile1(int taille); 00124 00133 double Quartile3(int taille); 00134 00142 bool Nulle(); 00143 00151 bool Negatif(); 00152 // bool Entier(); 00153 00159 Logarithme(); 00160 00166 Exponentielle(); 00167 00173 Inverse(); 00174 00180 Opposee(); 00181 00189 Puissance(int p); 00190 00197 Lineaire(double a, double b); 00198 00199 // Somme (Liste &L); 00200 // Produit (Liste &L); 00201 00207 PuissanceNonEntiere(double p); 00208 00209 00214 double Produit(); 00215 00220 double Somme(); 00221 00229 Sauvegarde(char name[]); 00230 00237 SauvePoint(char name[]); 00238 00245 OuvreAbscisses(char name[]); 00246 00253 Ouverture(char name[]); 00254 00258 int TriQuickSort(); // Tri la liste 00259 00264 TriShell(); 00265 00270 bool IsSort(); 00271 00282 void PositionNegatif(bool &negatif, int &position); 00283 00288 ValeurAbsolue(); 00289 00290 00291 // TriHeapSort(); 00292 // TriInsertion(); // Tri par insertion de la liste 00293 00298 Liste & Liste::operator = (const Liste &P); 00299 00304 CELLULE *tete, *queue; 00305 00306 };