ARBRE QUELCONQUE

cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 - 3 mars 2006 à 16:27
nejmd Messages postés 1 Date d'inscription mercredi 19 décembre 2007 Statut Membre Dernière intervention 22 novembre 2008 - 22 nov. 2008 à 16:04
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/36359-arbre-quelconque

nejmd Messages postés 1 Date d'inscription mercredi 19 décembre 2007 Statut Membre Dernière intervention 22 novembre 2008
22 nov. 2008 à 16:04
hey est ce que qqun peutm aider a reussir l insertion dans un arbre equilibré
Haykel2006 Messages postés 1 Date d'inscription mercredi 5 octobre 2005 Statut Membre Dernière intervention 4 mars 2006
4 mars 2006 à 09:39
Merci pour tous vos commantaires, et merci pour les corrections, c'est vraie qu'il y quelques fautes, mais j'ai laissé une mauvaise copie du code source, (FAUTE DE COPIER COLLER)
ncoder Messages postés 244 Date d'inscription vendredi 6 mai 2005 Statut Membre Dernière intervention 6 avril 2008 1
3 mars 2006 à 20:50
Ah ok j'avais pas regardé le code juste le commentaire merci
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
3 mars 2006 à 19:31
void somme(Arbre A)
{int s=0;
if(A!=0)
{
s=A->val+somme(A->fd)+somme(A->fg);//appel recursive
}
printf("somme des noeud = %d", s);
}

Faut bien relire la fonction, Haykel se sert de ce que renvoie la fonction somme, or elle ne renvoie rien, il y a donc bien une couille (pardon :$).
ncoder Messages postés 244 Date d'inscription vendredi 6 mai 2005 Statut Membre Dernière intervention 6 avril 2008 1
3 mars 2006 à 19:22
LUHTOR ==> Pourquoi une fonction qui affiche quelque chose est a bannir totalment ?

AlexMAN ==> Où est le pb que ça fonction ne renvoie rien ?
Je fais plein de fonctions : void ... (int) !!!
Et yas pas de pb... ?

Thx
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
3 mars 2006 à 16:55
C'est normal que sa fonction ne renvoie rien, puisqu'elle affiche le résultat. Mais de tout facon, une fonction qui affiche quelque chose est a bannir totalement et faut bien sur préférer la deuxième version proposée par Alexman.
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
3 mars 2006 à 16:27
//*************************************************************
void somme(Arbre A)
{int s=0;
if(A!=0)
{
s=A->val+somme(A->fd)+somme(A->fg);//appel recursive
}
printf("somme des noeud = %d", s);
}

Ta fonction somme ne renvoie rien (void somme(..)), ce n'est pas possible qu'elle fonctionne la !

int somme(Arbre A)
{
int s = 0;

if(A != 0) {
s = A->val + somme(A->fd) + somme(A->fg);
}

return s;
}

Je crois que tu n'as mm pas pris la peine de compiler ta source (cf void somme(Arbre A) a la place de arbre A).
Rejoignez-nous