Fichier PDF

Partage, hébergement, conversion et archivage facile de documents au format PDF

Partager un fichier Mes fichiers Convertir un fichier Boite à outils PDF Recherche PDF Aide Contact



Correction Pile 1 .pdf



Nom original: Correction Pile 1.pdf
Titre: Correction Pile 1
Auteur: zouari

Ce document au format PDF 1.4 a été généré par PDFCreator 2.4.1.13, et a été envoyé sur fichier-pdf.fr le 13/04/2017 à 12:44, depuis l'adresse IP 197.25.x.x. La présente page de téléchargement du fichier a été vue 228 fois.
Taille du document: 50 Ko (3 pages).
Confidentialité: fichier public




Télécharger le fichier (PDF)









Aperçu du document


Correction Pile
Ajout d'un nouvel élément
1. On crée un nouvel élément de type Pile
Pile *p_nouveau = malloc(sizeof *p_nouveau);

Grâce à malloc, on alloue de la place pour notre nouveau maillon de la pile. Remarquez alors que je
n'ai pas mis sizeof Pile dans le malloc mais sizeof *p_nouveau, ce qui revient exactement au même.
Cependant, la deuxième forme présente un avantage. En effet, si, par exemple, on modifie le nom de
notre structure, il ne sera pas la peine de le modifier dans notre malloc.
2. On vérifie que l'élément a bien été créé
if (p_nouveau != NULL)
{
}

Cette étape consiste tout simplement à vérifier si notre nouvel élément créé est bel et bien utilisable.
Il suffit alors de vérifier si l'allocation s'est bien passée, c'est-à-dire si malloc n'a pas retourné NULL.
3. On assigne à la donnée de cet élément la donnée que l'on veut ajouter
p_nouveau->donnee = donnee;

Ici, on assigne tout simplement à p_nouveau->donnee (rappelez-vous la structure) la donnée que l'on
passe en paramètre, de manière à ce que l'on puisse la stocker dans la pile.
4. On fait pointer cet élément sur le sommet de la pile
p_nouveau->precedent = *p_pile;

Par cette étape, on commence à attacher notre nouvel élément créé à la pile.
5. On fait pointer le sommet de la pile sur cet élément
*p_pile = p_nouveau;

Enfin, on finalise notre attachement en faisant pointer la pile vers notre élément, ce qui nous permet
d'avoir un pointeur vers le sommet de la pile.
En rassemblant toutes les étapes, voici notre fameuse fonction :
void pile_push(Pile **p_pile, int donnee)
{
Pile *p_nouveau = malloc(sizeof *p_nouveau);
if (p_nouveau != NULL)
{
p_nouveau->donnee = donnee;
p_nouveau->precedent = *p_pile;
*p_pile = p_nouveau;
}
}

Si vous avez du mal à visualiser comment se déroule l'ajout, voici un schéma :

Dans ce schéma, on suppose que l'on veut ajouter la valeur 14 à la pile et que la création du nouvel
élément s'est bien passée. Ce schéma vous montre les différentes étapes jusqu'à l'étape 4. Ici, nous
pointons sur l'avant-dernier élément de la pile, d'où l'étape 5 pour « monter » le pointeur d'un cran
comme ceci :


Correction Pile 1.pdf - page 1/3
Correction Pile 1.pdf - page 2/3
Correction Pile 1.pdf - page 3/3

Documents similaires


Fichier PDF correction pile 1
Fichier PDF correction pile 2
Fichier PDF coursmodelisationcalage2010 140502130402 phpapp02
Fichier PDF jumpingfrog
Fichier PDF jumpingfrog 1
Fichier PDF creation d un rack fx instrus ableton live


Sur le même sujet..