Salus a tous,
est ce que qelqun a des examples comment utiliser le pile et le file
- create
- Push
- enfiler
- defiler
- ......
- merci...
Salus a tous,
est ce que qelqun a des examples comment utiliser le pile et le file
- create
- Push
- enfiler
- defiler
- ......
- merci...
Si on a un tableau des valeur real ou integer
comment peut remplir le pile par ces valeus ?
soit un TQueue : Q
soit un TStack: S : même chose !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Q.Push(Pointer(MonInteger)); // stocke un entier MonInteger:=Integer(Q.Pop); Q.Push(@MonReal); // stocke l'adresse d'un réel Q.Push(MonPReal); // stocke un pointeur sur un réel
Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
. Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !
ok et pour implementer les valeurs dedans le pile = affichage des valeurs ?
comment
quel est ton problème concret ? pourquoi as-tu besoin d'une file/pile ?
l'intérêt d'une pile (TStack) est d'empiler-dépiler sans se préoccuper des valeurs "en dessous" (on peut les obtenir avec Peek
si tu as un tableau (fixe ou s'allongeant) de valeurs dans lequel certaines vont s'empiler, un traitement devant les dépiler, tu peux gérer ça avec un TStack d'entiers correspondant à l'indice de la valeur dans le tableau.
Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
. Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !
ok, mon problème est un petit peux dure, mais j'ai besoin seulement de connaitre l'utilisation de pile et file sous Delphi,
je sais que la pile pour stocker les variable ou quelque chose, mais j'ai besoin de réutiliser dans apres, vous avez compris, donc j'ai besoin de parcourir la pile et connaitre tous les valeurs dedans.
dans un premier temps, j'utilise un ListBox contient des variables je remplie la pile, mais je ne sais pas comment les récupère.
un petit exemple, j'ai deux listBox, et le premier contient des valeur entier, je tape le bouton, la pile parcoure le listBox et garde ces valeur, et je veux les mettre dans le deusieme listBox en utilisant la pile , je pense que c'est claire, car j'ai mal en francais ,
pour charger les valeurs dans une pile :
pour les dépiler dans un autre listbox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for i:=1 to ListBox1.Items.Count do begin valeur:=StrToInt(ListBox1.Items[i-1]); MyStack.Push(Pointer(valeur)); end;
pour voir les valeurs dans la pile : (ordre de dépilage, // ou d'empilage)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 while MyStack.Count>0 do begin ListBox2.Items.Add(IntToStr(Integer(MyStack.Pop))); end;
fait en dehors de delphi => sujet à adaptation !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 for i:=MyStack.Count downto 1 // ou for i:=1 to MyStack.Count do begin ShowMessage(IntToStr(Integer(MyStack.Peek(i-1)))); end;
j'espère répondre à ton problème...
Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
. Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !
mais a l'execution dit :
[Pascal Erreur] Unit2.pas(45): E2034 Trop de paramètres originaux
pour le code :
ListBox2.Items.Add(IntToStr(Integer(s.Peek(i-1))));
???
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager