Aller au contenu






- - - - -

Les Algorigrammes

Posté par Jekert , 31 mars 2016 · 4 286 visite(s)

Arduino débutant
Comme je vous l'avais dit dans le précédent billet, je souhaite revenir sur les algorigrammes, sur pourquoi et comment les faire.
 
Pourquoi ?
Donc les avantages d'un algorigrammes :
  • Ils permettent de mieux comprendre ce que doit faire votre programme donc si vous avez besoin d'aide une personne extérieure pourras vous aider plus facilement
  • Ils permettent d'identifier les structures que vous allez utiliser
  • Ils peuvent être facilement traduits pour n'importe quel langage et donc processeur, il est donc plus facile de migrer son programme.
Comment ?
 
Un algorigramme ressemble à ceci :


Image IPB

 

 

Pour en créer facilement vous pouvez utiliser le logiciel nommé Dia (disponible sous Windows et Linux)

 

 

Les cellules :
Il est composé de différentes cellules dont celles que l'on utilise principalement sont :
 

Image IPB

Début, fin, interruption

On l'on l'utilise le plus souvent pour la cellule du début, elle correspond à la fonction "setup" dans un programme Arduino.

 

Image IPB

Traitement/Opération interne

Sert à symboliser les actions internes qui ne font pas appel à des entrées ou des sorties. Par exemple Attendre x secondes sera symboliser par un rectangle dans un algorigramme.

 

Image IPB

Décision 

Toutes les boucles ainsi que de nombreuses structures sont basées sur cette cellule, c'est généralement une question, une comparaison.

 

Image IPB

Sous-programme

Servent à symboliser des portions de programmes telles que des fonctions auxquelles ont fait appel dans un programme.

 

Les différentes structures :
L'algorigramme représente tout ce qu'il va se passer après la fonction setup donc elle ne sera pas dans la traduction.
 

La structure linéaire :

Image IPB

C'est une suite d'action, il n'y a pas grand chose à expliquer.

 

Les structures alternatives :

Image IPB

Un simple si... alors...

Traduction en langage Arduino :

if (X == HIGH)
{
  digitalWrite(led, HIGH);
  delay(500);
  digitalWrite(led, LOW);
  delay(500);
}

Une autre structure :

Image IPB

Il s'agit d'un si..., alors..., sinon.... Il permet d'exécuter une partie du programme si la condition est fausse.

Traduction en langage Arduino :

if (X == HIGH)
{
  digitalWrite(led, HIGH);
  delay(500);
  digitalWrite(led, LOW);
  delay(500);
}
else
{
  delay(500);
}

Les structures itératives ou répétitives :

Image IPB

La structure faire... jusqu'à...

Execute la suite d'action contenue dans la boucle puis si la condition est vérifiée, revient au début de la boucle.

Traduction en langage Arduino :

do {
     digitalWrite(led, HIGH);
     delay(500);
     digitalWrite(led, LOW);
     delay(500);
} while (X == HIGH);

Image IPB

La structure tant que... faire... :

Ressemble à la structure faire jusqu'à mais contrairement à celle-ci, si la condition n'est pas vérifiée alors la boucle ne s’exécutera pas.

Traduction en langage Arduino :

while (X == LOW)
{
 digitalWrite(led, HIGH);
 delay(500);
 digitalWrite(led, LOW);
 delay(500);
}

Image IPB

La structure Pour... Faire... :

C'est la seule structure dont ont connait le nombre d'exécutions, on définit un nombre de départ, un nombre que l'on doit atteindre ainsi qu'un pas.

Traduction en langage Arduino :

for(X = 5; X <= 0; X--) //(valeur initiale; valeur finale; pas)
{
  digitalWrite(led, HIGH);
  delay(500);
  digitalWrite(led, LOW);
  delay(500);
}
Pour les autres structures en Arduino vous pouvez regarder cette page qui explique tout sur le langage Arduino.
J'espère avoir été suffisamment clair, si vous avez des questions n'hésitez pas.

  • Melmet et Mike118 aiment ceci



Ma photo

Progression

État du prochain billet :

5%

 

État du prochain chapitre de l'ouvrage:

85%

 

Rechercher dans le blog

utilisateur(s) actif(s)

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)

Derniers visiteurs

  • Photo
    Modeste2004
    23 nov. 2023 - 08:49
  • 03 oct. 2023 - 17:20
  • Photo
    nounours18200
    22 juil. 2023 - 12:22

Derniers commentaires