Last active
September 25, 2015 17:17
-
-
Save jtraulle/dcdec143add52b082bf1 to your computer and use it in GitHub Desktop.
Langage Pascal : listes simplement chaînées
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
program ListesSimplementChainees; | |
{pcellule est un pointeur vers une cellule | |
cellule est une structure contenant | |
- valeur : une valeur | |
- suivant : un pointeur vers la prochaîne cellule (le prochain élément de la liste } | |
type pcellule = ^cellule ; | |
cellule = record | |
valeur : integer; | |
suivant : pcellule; | |
end; | |
{Procédure permettant d'ajouter un élément à la fin d'une liste} | |
procedure ajouterElementFinListe(celInitiale : pcellule) ; | |
var precedent, cel : pcellule; {Contiendra l'adresse de la cellule précédente et de la cellule courante} | |
begin | |
writeln('Saisissez la valeur de l element a ajouter en fin de liste : '); | |
readln(valeur); {On récupère la valeur de l'élément à ajouter à la liste} | |
precedent:=celInitiale; {On indique l'adresse de la cellule courante pour qu'on puisse la récupérer au prochain passage de boucle} | |
while (precedent^.suivant <> nil) do precedent := precedent^.suivant; | |
new(cel); | |
cel^.valeur:= valeur; | |
precedent^.suivant:= cel; | |
end; | |
procedure afficherListe(cel: pcellule); | |
var compteur : integer; | |
begin | |
compteur := 0; | |
while (cel <> NIL) do | |
begin | |
compteur := compteur + 1; | |
writeln('Item n°',compteur,' : ',cel^.valeur); | |
cel:=cel^.suivant; | |
end; | |
end; | |
var liste1 : pcellule; {contient l'adresse de la cellule initiale de notre liste} | |
BEGIN | |
new(liste1); | |
ajouterElementFinListe(liste1); {On appelle creerListe pour cree la liste} | |
ajouterElementFinListe(liste1); {On appelle creerListe pour cree la liste} | |
afficherListe(liste1); {On affiche la liste nouvellement créée} | |
readln; | |
END. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment