Exood4 Studio - Video Game Development, Toulouse (France)
Exood4 Studios Exood4 Tutorials

   
A l g o r i t h m e s

L ' a c t e u r   m a c h i n e   i n f o r m a t i q u e




 On appelle "acteur machine informatique" ou machine C (ou tout autre langage), l'acteur qui est utilisé pour le dernier niveau de raffinage d'un algorithme (avant la phase de codage). On peut définir les caractéristiques suivantes de l'acteur machine C :
  • OBJETS = valeurs et variables
  • ACTIONS = actions élémentaires (affectation, calcul, ...) + communication avec l'utilisateur (lecture, écriture de données)


Les Objets


Les valeurs

 Les valeurs sont utilisées pour représenter des constantes. Elles sont de plusieurs types : valeurs de type numérique, caractère, chaîne de caractères ...

Exemple :
123 (type numérique)
'A' (caractère)
"MESSAGE" (chaîne de caractères)

Les variables élémentaires

 Elles servent à représenter des valeurs sans les nommer explicitement, on leur associe un nom (ou identificateur). Le nom autorise l'accès à la valeur. Les valeurs sont uniquement utilisées alors que les variables peuvent également être modifiées.

Exemple : SOMME, FREQUENCE, I ...

Remarque : les variables sont aussi d'un certain type (numérique, caractère ...)


Les variables structurées

 Une variable structurée est un regroupement logique de plusieurs données.

Exemple :
Soit la donnée DATE :
JOUR (entier compris entre 1 et 31)
DATE MOIS (entier compris entre 1 et 12)
ANNEE (entier)
 On utilise un constructeur de données :




 Il existe deux constructeurs importants : Tableau et Enregistrement


1) Le constructeur tableau

 Séquence de longueur fixe de données, où chaque donnée est identifiée par une position appelée indice. Soit TAB une variable structurée Tableau de n éléments, les données du tableau TAB sont désignées par : TAB [1 .. n]
TAB[1] désigne la 1ère donnée du tableau TAB
TAB[2] désigne la 2ème donnée du tableau TAB
...
TAB[n] désigne la nème donnée du tableau TAB
 La notation [ ] traduit une fonction d'accès à une donnée d'un tableau.

Exemple :
Inventaire du personnage, maximum d'objets dans l'inventaire : 100 objets
Ne pas déclarer 100 variables élémentaires !! Par contre déclarer un tableau, par exemple OBJETS de 100 éléments : soit l'ensemble des objets que possède le joueur : OBJETS [1 .. 100], si J est un indice du tableau OBJETS, OBJETS[J] contient le Jème objet.
Remarque : Les éléments d'un tableau sont tous du même type (entier, réel ...)

 Quand utiliser un tableau ? L'utilisation des tableaux est justifiée dans le cas de consultations répétitives d'un ensemble de données, lors d'une réorganisation d'un ensemble de données (tris) etc ...


2) Le constructeur enregistrement

 Un enregistrement est un regroupement logique de données, chaque donnée est accessible directement par une sélection. Il permet de manipuler globalement plusieurs informations. On peut associer un type particulier à chaque donnée.

Exemple : l'enregistrement DATE avec les données JOUR, MOIS, ANNEE


 La fonction d'accès à une donnée d'un enregistrement se fera par la notation point '.', on écrira :
DATE . JOUR pour accéder au jour de la date
DATE . ANNEE pour accéder à l'année de la date
Remarque : en algorithmique, on déclarera les variables élémentaires et structurées dans un GLOSSAIRE (nom et rôle de chaque variable)

Exemple :
OBJETS : tableau de 100 objets (codés par des entiers);
I : indice de parcours du tableau OBJETS;
DATE : enregistrement composé de 3 champs JOUR, MOIS, ANNEE;


Les actions élémentaires


 Il existe trois types d'actions élémentaires :
  • l'affectation
  • la lecture de données
  • l'écriture de résultats
 Les 2 dernières autorisent la communication avec l'utilisateur.


L'affectation

 L'affectation revient à fournir une (nouvelle) valeur à une variable.

 Syntaxe : Variable expression

 Sémantique :
  • évaluation de l'expression
  • résultat affecté comme nouvelle valeur à la variable
 SOMME 0;
 FREQUENCE COMPTE / I;
 SOMME SOMME + I;


Remarque :
Le symbole doit se lire "reçoit" ou "devient" (ce n'est pas une égalité). Dans un algorithme on écrira :

 Affecter à la variable X la valeur Y
 Calculer la nouvelle fréquence ...

La lecture de données

 La lecture est une action qui permet de communiquer à l'algorithme une valeur. La valeur est un paramètre de l'algorithme.

 Syntaxe : LIRE (ensemble de valeurs)

Exemple :
LIRE (NOM_DU_JOUEUR); LIRE (LOGIN,MOT_DE_PASSE);
 Dans un algorithme en pseudo-français, on utilisera les actions "Lire la valeur de ...", "Demander la valeur de ..."

Remarques :
La lecture d'une valeur seule n'a pas de sens, il faut en fait lire une valeur et l'affecter à une variable

 LIRE(3) : incorrect
 LIRE(CODE) : lecture d'une valeur (par exemple 1234) et affectation de la valeur à la variable CODE

L'ensemble des données extérieures n'est lu qu'une seule fois. L'utilisateur ne communique qu'une fois cet ensemble. Il faut mémoriser la valeur obtenue lors de l'acquisition des données si plusieurs accès sont nécessaires.

Ecriture de résultats

 L'écriture est l'action qui permet de communiquer à l'utilisateur un ensemble de valeurs calculées par l'algorithme.

 Syntaxe : ECRIRE (ensemble de valeurs);

Exemple :
ECRIRE(VITALITE);
ECRIRE(3);
ECRIRE("erreur");
Remarque : on peut écrire des valeurs de variables ou des valeurs (entières, chaînes ...)


 Dans un algorithme en pseudo-français, on écrira :
"Fournir la valeur de ..."
"Écrire la valeur de ..."
"Donner la valeur de ..."


Retour en haut de page