Skip to content
Snippets Groups Projects
Commit 10428e6d authored by Sanchez Alexandre's avatar Sanchez Alexandre
Browse files

[Compétences] Aide à R. Jegat

parent b5c3d93f
No related branches found
No related tags found
No related merge requests found
Pipeline #
...@@ -60,6 +60,16 @@ int estVide(Competence *c) ...@@ -60,6 +60,16 @@ int estVide(Competence *c)
return(c->enfant==NULL); return(c->enfant==NULL);
} }
/*!
* \fn int aUnFrere(Competence *c)
* \brief La fonction indique si une competence a un frère.
*
* \return vrai ou faux.
*/
int aUnFrere(Competence *c)
{
return(c->frere!=NULL);
}
/* -------------------------------------------------------*/ /* -------------------------------------------------------*/
/* Fonctions de set des competences */ /* Fonctions de set des competences */
...@@ -74,25 +84,22 @@ int set_comp_enfant(Competence *parent, Competence *nouvel_enfant) /* Ne foncti ...@@ -74,25 +84,22 @@ int set_comp_enfant(Competence *parent, Competence *nouvel_enfant) /* Ne foncti
} }
else // Solution cracra mais ça ne marche pas autrement (avec un while) // else // Solution cracra mais ça ne marche pas autrement (avec un while) //
{ {
if(estVide(parent->enfant)) set_comp_frere(parent->enfant, nouvel_enfant);
{
parent->enfant->frere = nouvel_enfant;
}
else if(estVide(parent->enfant->frere))
{
parent->enfant->frere->frere = nouvel_enfant;
}
else if(estVide(parent->enfant->frere->frere))
{
parent->enfant->frere->frere->frere = nouvel_enfant;
}
} }
return 0; return 0;
} }
int set_comp_frere(Competence *noeud, Competence *nouveau_frere) int set_comp_frere(Competence *noeud, Competence *nouveau_frere)
{ {
noeud->frere = nouveau_frere; if(aUnFrere(noeud))
{
set_comp_frere(noeud->frere, nouveau_frere);
}
else
{
init_Competence(noeud->frere);
noeud->frere = nouveau_frere;
}
return 0; return 0;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment