Le langage ADA est un langage impératif très utilisé pour apprendre les bases de l'algorithmique. Il possède de nombreuses facilités et une grande richesse de traitements. C'est un langage très propre de par sa syntaxe et les erreurs sont pour la plupart détectées dès la compilation. Comme toute chose, pour progresser en ada, il faut pratiquer. Pour cela, je vous conseille d'utiliser le compilateur Gnat et le logiciel ADAGide.
Ce cours a pour but de vous apprendre à utiliser trois structures de données particulières que sont la pile, la file et la liste et qui permettent bien souvent de résoudre des problèmes plus simplement. Dans chaque partie, nous commencerons par définir la structure puis nous verrons les différentes routines pour les manipuler (...)
[...] PROCEDURE initfile(f: IN OUT file) IS BEGIN F.tete:=0; F.queue:=0; END Initfile; PROCEDURE Enfiler(f:IN OUT file;X:Integer) IS BEGIN F.File(F.Queue):=X; F.queue:=f.queue+1 mod f.file'last; end enfiler; PROCEDURE Defiler (F:IN OUT File) IS BEGIN F.tete:=F.tete-1; END Defiler; FUNCTION Lirefile(F:IN File) return integer IS BEGIN RETURN (F.File(F.Tete)); END Lirefile; FUNCTION Filevide ( F:File)RETURN Boolean IS BEGIN IF F.Tete=0 THEN RETURN (True); ELSE RETURN (False); END IF; END Filevide; FUNCTION Filepleine (F:File) RETURN Boolean IS BEGIN IF F.Tete=10 THEN RETURN (True); ELSE RETURN (False); END IF; 3 END Filepleine; PROCEDURE Inversefile (F:IN OUT File) IS Tab : ARRAY ( 10) OF Integer; a:integer:=F.tete; BEGIN FOR I IN F.tete LOOP Tab(I):=Lirefile(F); Defiler(F); END LOOP; FOR I IN reverse A LOOP Enfiler(F,Tab(I)); END LOOP; END Inversefile; 4 III / Les listes Définition : TYPE Tableau IS ARRAY ( 20) OF Integer; type Liste20 IS RECORD tab:tableau; Nb:Integer; end record; Une liste est définie par un tableau et un entier représentant le nombre d'éléments de la liste. Routines : De même que les deux structures précédentes, on initialise la liste en la vidant. On peut ajouter un élément et en enlever un à n'importe quel endroit de la liste. [...]
[...] Ce cours a pour but de vous apprendre à utiliser trois structures de données particulières que sont la pile, la file et la liste et qui permettent bien souvent de résoudre des problèmes plus simplement. Dans chaque partie, nous commencerons par définir la structure puis nous verrons les différentes routines pour les manipuler. I / Les piles Définition : type tableau is array( 10) of integer; --Déclaration d'un tableau d'entier de 10 entier type Pile is record pile:tableau; sommet:integer; end Record; Comme nous pouvons l'observer ici, une pile est définie par un tableau et par un entier représentant le sommet de la pile qui est un des indices du tableau. [...]
[...] Procedure Viderliste(L:in out Liste20) is BEGIN L.Nb:=0; end Viderliste; function ListeVide (L:Liste20) return boolean is begin if L.Nb=0 then return true; ELSE RETURN False; end if; end ListeVide; function ListePleine (L:Liste20) return boolean is begin if L.Nb=20 then return true; else return false; end if; end ListePleine; function TailleListe (L:liste20) return integer is BEGIN return (L.Nb); end TailleListe; function Lire (L:Liste20;pos:natural) return integer is begin return L.Tab(pos); end Lire; procedure Supprimer (L:in out Liste20;pos:in natural) is begin for i in pos . L.Nb+1 loop L.tab(i):=L.tab(i)+1; end loop; L.Nb:=L.Nb+1; end Supprimer; 5 procedure afficher (L:in Liste20) is begin if L.Nb=0 then ELSE for i in L.Nb-1 loop Put(L.Tab(I)); END LOOP; put(L.tab(L.Nb)); dehors de la boucle pour ne pas avoir un après la dernière valeur END IF; end afficher; Procedure ajouter (L:in out Liste20;pos:in natural;val:in integer) is begin for i in L.Nb . [...]
[...] Piles, files et listes en ada Préambule : Le langage ADA est un langage impératif très utilisé pour apprendre les bases de l'algorithmique. Il possède de nombreuses facilités et une grande richesse de traitements. C'est un langage très propre de par sa syntaxe et les erreurs sont pour la plupart détectées dès la compilation. Comme toute chose, pour progresser en ada, il faut pratiquer. Pour cela, je vous conseille d'utiliser le compilateur Gnat et le logiciel ADAGide. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture