Débuggage et changement de structure avec adaptation dans toutes les fonctions. Tout compile et fonctionne
parent
fb8d334666
commit
ad68a43e68
@ -1,94 +1,101 @@
|
|||||||
|
#include "Jsae.h"
|
||||||
|
|
||||||
ListeDept listenouv(void){
|
ListeDept listeDeptNouv(void)
|
||||||
Liste d;
|
{
|
||||||
d=NULL;
|
ListeDept lDept;
|
||||||
return d;
|
lDept = NULL;
|
||||||
|
return lDept;
|
||||||
}
|
}
|
||||||
|
|
||||||
ListeDept InsérerEntete(ListeDept d,int nb){
|
ListeDept insérerEntete(ListeDept lDept,Departement d)
|
||||||
|
{
|
||||||
MaillonDept *m;
|
MaillonDept *m;
|
||||||
m=(MaillonDept*)malloc(sizeof(Maillon));
|
m = (MaillonDept *)malloc(sizeof(MaillonDept));
|
||||||
if(m==NULL){
|
if(m == NULL)
|
||||||
printf("pb malloc\n");
|
{
|
||||||
|
printf("Problème d'allocation mémoire lors de l'insertion\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
m->v=x;
|
m->d = d;
|
||||||
m->suiv=l;
|
m->suiv = lDept;
|
||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
|
||||||
Liste Insérer(Liste l, int x){
|
ListeDept insérerDept(ListeDept lDept, Departement d)
|
||||||
if(l==NULL)
|
{
|
||||||
return InsérerEntete(l,x);
|
if(lDept == NULL)
|
||||||
if(x<l->suiv)
|
return insérerEntete(lDept,d);
|
||||||
return InsérerEntete(l,x);
|
if(d.dept < lDept->d.dept)
|
||||||
if(x==l->v)
|
return insérerEntete(lDept,d);
|
||||||
return l;
|
if(d.dept == lDept->d.dept)
|
||||||
l->suiv=Insérer(l->suiv,x);
|
printf("Département déjà présent dans cet IUT\n");
|
||||||
return l;
|
return lDept;
|
||||||
|
lDept->suiv = insérerDept(lDept->suiv,d);
|
||||||
|
return lDept;
|
||||||
}
|
}
|
||||||
|
|
||||||
Liste supprimerEntete(Liste l){
|
ListeDept supprimerEntete(ListeDept lDept)
|
||||||
Maillon *aux;
|
{
|
||||||
if(l==NULL){
|
ListeDept aux;
|
||||||
|
if(lDept == NULL)
|
||||||
|
{
|
||||||
printf("Opération interdite\n");
|
printf("Opération interdite\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
aux=l;
|
aux = lDept;
|
||||||
l=l->suiv;
|
lDept = lDept->suiv;
|
||||||
free(aux);
|
free(aux);
|
||||||
return l;
|
return lDept;
|
||||||
}
|
}
|
||||||
|
|
||||||
Liste supprimer(Liste l, int x){
|
ListeDept supprimerDept(ListeDept lDept, Departement d)
|
||||||
if(l==NULL)
|
{
|
||||||
return l;
|
if(lDept == NULL)
|
||||||
if(x<l->v)
|
return lDept;
|
||||||
return l;
|
if(d.dept < lDept->d.dept)
|
||||||
if(x==l->v)
|
return lDept;
|
||||||
return supprimerEntete(l);
|
if(d.dept == lDept->d.dept)
|
||||||
l->suiv=supprimer(l->v,x);
|
return supprimerEntete(lDept);
|
||||||
return l;
|
lDept->suiv = supprimerDept(lDept->suiv,d);
|
||||||
|
return lDept;
|
||||||
}
|
}
|
||||||
|
|
||||||
int longueur(Liste l){
|
int longueur(ListeDept lDept)
|
||||||
int cpt=0;
|
{
|
||||||
while(l!=NULL){
|
int compt = 0;
|
||||||
cpt=cpt+1;
|
while(lDept != NULL)
|
||||||
l=l->suiv;
|
{
|
||||||
|
compt = compt + 1;
|
||||||
|
lDept = lDept->suiv;
|
||||||
}
|
}
|
||||||
return cpt;
|
return compt;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool vide(Liste l){
|
bool vide(ListeDept lDept)
|
||||||
if(l==NULL)
|
{
|
||||||
|
if(lDept == NULL)
|
||||||
return true;
|
return true;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
Liste ajouterEnqueue(Liste l, int x){
|
|
||||||
if(vide(l))
|
|
||||||
return InsérerEntete(l,x);
|
|
||||||
l->suiv=ajouterEnqueue(l->suiv,x);
|
|
||||||
return l;
|
|
||||||
}
|
|
||||||
|
|
||||||
int tete(Liste l){
|
/*int tete(Liste l){
|
||||||
if(l==NULL){
|
if(l==NULL){
|
||||||
printf("Opération interdite\n");
|
printf("Opération interdite\n");
|
||||||
exit(1)
|
exit(1)
|
||||||
}
|
}
|
||||||
return l->v;
|
return l->v;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
bool rechercher(Liste l, int x){
|
bool rechercherDept(ListeDept lDept, Departement d)
|
||||||
if(vide(l))
|
{
|
||||||
|
if(vide(lDept))
|
||||||
return false;
|
return false;
|
||||||
if(x<l->v)
|
if(d.dept < lDept->d.dept)
|
||||||
return false;
|
return false;
|
||||||
if(x==l->v)
|
if(d.dept == lDept->d.dept)
|
||||||
return true;
|
return true;
|
||||||
return rechercher(l->suiv,x);
|
return rechercherDept(lDept->suiv, d);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in new issue