Cours:TpAlgorithmique : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(structure si/alors/sinon)
(structure si/alors/sinon)
Ligne 95 : Ligne 95 :
  
 
*allumage de lampadaires
 
*allumage de lampadaires
**https://fr.wikipedia.org/wiki/Lumière_du_jour#%C3%89clairement_lumineux
+
**https://fr.wikipedia.org/wiki/Lumière_du_jour#éclairement_lumineux
 
**un capteur de lumière positionné sur la broche 10 retourne la valeur d'éclairement en lux
 
**un capteur de lumière positionné sur la broche 10 retourne la valeur d'éclairement en lux
 
**on allume le lampadaire sur la broche 5 lorsqu'il fait nuit (éclairement inférieur à 2 lux)
 
**on allume le lampadaire sur la broche 5 lorsqu'il fait nuit (éclairement inférieur à 2 lux)

Version du 7 septembre 2023 à 09:18

Un algorithme est une suite ordonnée d'instructions permettant la résolution d'un problème.

On écrira les algorithmes de la façon suivante :

  • on commencera par donner le nom de l'algorithme
  • on listera ensuite les variables utilisées
  • on listera ensuite les instructions a effectuer entre :
    • debut
    • fin


algorithme nomDeAlgorithme
<liste des variables>
debut
<liste des instructions>
fin

entrées/sorties

un algorithme devra nécessairement interagir avec l'extérieur par :

  • des lectures
    • clavier
    • bouton poussoir
    • mesure de température
    • =>capteurs
  • des écritures
    • afficher à l'écran
    • imprimer
    • allumer un voyant
    • faire tourner un moteur
    • =>actionneurs


sorties

Exemple :

algorithme ex1
debut
    allumer led rouge
fin

Question.jpg écrire des algorithmes qui répondent aux cahiers des charges suivants :

Attention, une sortie restera dans le dernier état dans laquelle on l'a placée

  • allumer une led rouge 1 fois pendant 5s
  • allumer successivement une led rouge puis orange puis verte, chacune pendant 3s

entrées

afin de mémoriser la valeur lue des entrées, nous utiliserons des variables en précisant leur type :

  • binaire : valeur vrai ou faux
  • entier : pour représenter ... des nombres entiers !
  • reel
  • texte

Ex :

algorithme ex2
Entier : etatBouton
debut
    etatBouton <- lire bouton broche 2
    afficher etatBouton
fin

Structures de contrôle

action conditionnelle

Nous avons vu qu'un algorithme est une liste d'actions exécutées séquentiellement.

Afin d'avoir des programmes qui ne réalisent pas systématiquement les mêmes actions, il est nécessaire de pouvoir choisir parmi plusieurs actions à réaliser.

structure si/alors/sinon

Cette structure permet de réaliser tels ou tels actions selon la valeur d'une condition :

si <condition est réalisée>
alors
   exécuter <tels actions>
sinon
   exécuter <tels autres actions>


Exemple :

algorithme ex3
binaire boutonAppuyé
debut
    boutonAppuyé <- lire bouton broche 5
    si boutonAppuyé est vrai
    alors
        allumer la led rouge broche 3
    sinon
        eteindre la led rouge broche 3
fin

Question.jpg écrire des algorithmes qui répondent aux cahiers des charges suivants :