begin process at 2012 02 11 01:12:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Problème pointeur en c++


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème pointeur en c++

jeudi 14 octobre 2004 à 21:56:53 | Problème pointeur en c++

ch3mical

Bonjour

j'ai un problème avec une partie de code , lorsque je créer mon arbre binaire jai un message d'erreur lorsque je rappel ma fonction récursive . Voici les bout de code qui peuvent aider

les structures de travail
----------------------------------------------------------
typedef struct Noeud
{
int valeur;
struct Noeud * filsGauche, * filsDroit;
} Noeud;

typedef struct
{
Noeud * racine;
} ArbreBinaire
----------------------------------


le prototype
--------------------------------
void chargerDonnees (ArbreBinaire *arbre);
----------------------------------

Le main
----------------------------------

void main ()
{

// Déclaration de variables

int Choix; // Choix entrée de l'usager

ArbreBinaire * arbre = new ArbreBinaire;

//traitement de la racine , création d'un noeud
arbre->racine = new Noeud;

// Initilalisation des pointeurs de l'arbre
arbre->racine->filsGauche = NULL;
arbre->racine->filsDroit = NULL;

----------------------------------


la fonction
----------------------------------

void chargerDonnees (ArbreBinaire *arbre)
{

int nombre; // valeur entrée par l'usager

cout << "Entrez un nombre à entrer dans l'arbre:" ;
cin >> nombre;


if(arbre == NULL)
{
return;
}
//si filsDroit est plus petit valeur
else if(nombre <= arbre->racine->valeur)
{
//si le noeud filsDroit existe pas on doit en créer un nouveau
if(arbre->racine->filsGauche == NULL)
{
arbre->racine->filsGauche = new Noeud;
arbre->racine->filsGauche->filsGauche = NULL;
arbre->racine->filsGauche->filsDroit = NULL;

//on assigne la valeur reçu
arbre->racine->filsGauche->valeur = nombre;
}
else
{
//on rappel la fonction pour continu la création de l'arbre
chargerDonnees (arbre->racine->filsGauche );
}
}
else if(nombre > arbre->racine->valeur)
{
//si le noeud filsGauche existe pas on doit en créer un nouveau
if(arbre->racine->filsDroit == NULL)
{
arbre->racine->filsDroit = new Noeud;
arbre->racine->filsDroit->filsDroit = NULL;
arbre->racine->filsDroit->filsGauche = NULL;

//on assigne la valeur reçu
arbre->racine->filsDroit->valeur = nombre;

return;
}
else
{
//on rappel la fonction pour continu la création de l'arbre
chargerDonnees(arbre->racine->filsDroit);
}
}

}




----------------------------------




jeudi 14 octobre 2004 à 23:51:13 | Re : Problème pointeur en c++

ymca2003

la fonction chargerDonnees attend un pointeur sur une structure ArbreBinaire. Or dans la récuresion, tu passe un pointeur sur un Noeud (les fils gauche et droit)
=> en mettant comme paramètre un pointeur sur une structure Noeud ça devrait aller.

Pour commencer la récursion, il suffira de passer un pointeur sur la racine de l'arbre.


Cette discussion est classée dans : arbre, noeud, racine, filsdroit, filsgauche


Répondre à ce message

Sujets en rapport avec ce message

Itérateurs en c++ 2 [ par Saris ] Lorsque je crée un iterateur sur un Arbre, comment puis-je faire en sorte que cet iterator point sur la racine de mon arbre?class Arbre{ private :  cl problème C++ help urgent ! [ par Saris ] Voici un morceau de ma classe générique d'un arbre./****************************************************************************< Les iterateurs en c++ Help me ! [ par Saris ] Bonjour à tous,J'suis bien embèté car je capte pas grand chose au fonctionnement des itérateurs ou plutôt à l'utilité de ceux-ci dans mon projet pour Les arbres en C [ par nadias ] Bonsoir tout le monde,Je voudrai SVP etre corriger s'il y a erreur merci.On me demande de creer un arbre. Voici la consigne:"Cette arbre possède des n [débutant] probleme de compilation [ par gluff ] Bonsoir, je réalise un programme qui crée un arbre généalogique à partir d'un arbre binaire  Il y a un structure NOEUD revoie vers le nom de la perso Arbre binaire [ par granoli ] Bonjour, et bonne année 2007,J'aimerais un algorithme simple de création d'arbre binaire.J'ai bien compris le concept des arbres binaires mais j'ai du faire un projet enc [ par nana87 ] slt, j'ai eu un programme en c mais je dois le réorganiser sous forme des fichier pour faire un projet ,il y a quelqu'un qui peut m'aider pour ce prob fonctions de base d'un arbre binaire [ par abdelkaderg54 ] Salut tout le monde ..Ben alors j'ai un probleme avec les arbre binaires ,je suis a la recherche des fonctions des base suivantes en c++:1/declaration arbre lexicographique [ par finoss ] Bonjour,Je dois réalisé pour un projet un arbre lexicographique en C, j'ai réussi à faire le code pour importer les 16000 mots depuis un fichier texte Affichage d'un arbre dynamique(en C) [ par marocweb ] bonjour tout le monde,j'ai un arbre déja crée en mémoire en utilisant les listes chainées et cela comme suit :Chaque noeud point vers une liste chainé


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,588 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales