LANGAGE Z ( Niveau II )
Conêu par Dr. D.E ZEGOUR
Professeur à l'Institut National d'Informatique
Le langage Z
est avant tout un langage pédagogique qui vise la construction des
algorithmes indépendamment de l'implémentation des structures de données
utilisées.
La particularité du
langage Z réside dans le fait de pouvoir écrire des algorithmes sur des machines
abstraites simulant les principales structures de données.
Le langage Z est conêu
principalement pour les objectifs suivants :
l'expérimentation sur les principales structures de données, peu importe leurs
implémentations, en développant des algorithmes sur
. les vecteurs,
. les listes linéaires chaînées,
. les listes bilatérales,
. les files d'attente,
. les piles,
. les arbres de recherche binaire,
. les arbres de recherche m-aire.
la création et la manipulation de structures de données complexes telles que
. liste de files d'attente,
. liste de piles,
. arbre de listes,
. liste de piles de vecteurs, etc.
l'écriture d'algorithmes récursifs.
Grāce
à sa machine abstraite définie sur les fichiers, le langage Z permet aussi l'utilisation
des fichiers et la construction aussi bien de structures simples que complexes de
fichiers.
Vous trouverez dans le Manuel
de référence
I. une présentation du langage Z,
II. une description des machines Z,
III. des exemples
de Z-algorithmes,
IV. un index des mots-clés Z,
V. la syntaxe détaillée de Z sous forme de diagrammes.
KHAWARIZM
KHAWARIZM est un
environnement pour apprendre et approfondir les principales structures de données offrant
la possibilité d'écrire des algorithmes dans un langage algorithmique ( langage Z ) , de
les arranger, de les dérouler ou les simuler et de fournir toute la documentation
nécessaire pour les traduire vers les langages de programmation PASCAL et C.
KHAWARIZM vise la
conception assistée des algorithmes.
KHAWARIZM assiste aussi
l'utilisateur pour traduire son algorithme en PASCAL ou C.
KHAWARIZM offre les
services suivants :
Un éditeur pour écrire vos algorithmes fournissant toute la documentation sur le langage
Z.
Un indenteur pour arranger vos algorithmes dont les principales fonctions sont les
suivantes :
. Chaque instruction est réécrite sur
une ligne différente.
. Les mots-clés, les commentaires et les constantes chaînes de caractères sont réécrits
dans des formats spécifiques.
. Le premier caractère de tout identificateur est réécrit en majuscule.
. Les structures de contrôle sont mises en relief.
. Les instructions de même niveau commencent sur la même colonne.
Un interpréteur pour exécuter vos algorithmes en donnant comme résultat l'ensemble des écritures émises par l'algorithme.
Un simulateur pour donner le déroulement complet de vos algorithmes en montrant
l'évolution de tous les objets manipulés. Ce qui vous aide à
corriger, voir construire vos algorithmes.
KHAWARIZM offre toute la
documentation sur le langage Z.
KHAWARIZM fournit les
équivalents Z --> PASCAL et Z --> C.
KHAWARIZM donne toutes
les implémentations (statique et dynamique) en PASCAL et en C des différentes machines
abstraites considérées dans le langage Z.
Une documentation importante vous montrera le passage d'un Z-algorithme vers un programme PASCAL ou C.