L'alternative en langage Python

L'alternative avec instruction composée (version 2)

Le cas du jeu traité à la page précédente était très simple.

Que se passe-t-il si plusieurs instructions doivent être exécutées dans l'un ou l'autre cas de l'alternative?

C'est maintenant que nous allons avoir besoin de la notion de "bloc d'instructions" introduite à la page précédente.

Soit une équation du premier degré du type a.x + b = 0 d'inconnue x.

On demande d'écrire un programme qui permet de déterminer la valeur de x quand on lui donne les valeurs de a et de b.

Mais c'est hyper-facile. Encore plus simple que l'exercice précédent!! x = -b/a et c'est terminé.

Mmmhhh... Il y a une petite difficulté quand même: on ne sait rien des valeurs qui seront choisies pour a et b. Or, le cours de maths nous apprend qu'il y a trois cas possibles selon les valeurs de a et b.

Données

  1. le paramètre a
  2. le paramètre b

Résultat

La valeur de x.

Résolution

  1. Prendre connaissance du paramètre a.
  2. Prendre connaissance du paramètre b.
  3. Déterminer la valeur de x si possible.
  4. communiquer la solution trouvée à l'étape 3.

Comment faire faire

L'étape 3 pourrait s'exprimer

Si  a est différent de 0
    Alors S = {-b/a}
    Sinon   Si b = 0
                Alors l'équation est indéterminée
                Sinon l'équation est impossible
            Fin Si
Fin Si

Résolution en langage Python

  • Ouvre l'éditeur de texte et recopies-y les lignes suivantes correspondant aux ligne 1, 2, 3 et 4 de la méthode décrite.
#! /usr/bin/python
# -*- encoding: ISO-8859-1 -*-

print "Résolution d'une équation du type ax + b = 0"
a = input ("paramètre a: ")
b = input ("paramètre b: ")

********

print "La solution est ", solution
  • Enregistre ce texte sous le nom equation.py.
  • Vérifie que tu comprends bien le rôle de chacune des instructions.

Ça devient une manie, le coup des étoiles...

  • Supprime les * du texte précédent
  • Frappe la première ligne de l'alternative, y compris le double point ":" final

if (a <> 0):

Le symbole ":" annonce que l'instruction n'est pas finie.

  • Complète le code avec la première branche de l'alternative.

if (a <> 0):
    solution = -b/a
else:  

Après else: , nous indiquerons le deuxième bloc d'instructions.

  • Poursuis le texte en annonçant la suite de l'alternative. Nous utilisons l'indentation pour mettre en évidence ce bloc d'instructions.

if (a <> 0):
    solution = -b/a
else:
    if (b == 0):
        solution = "indéterminé"
    else:
        solution = "impossible"

  • Vérifie que les indentations du texte sont correctement réalisées.
  • Le texte final qui doit se trouver dans l'éditeur de texte est donc bien:

#! /usr/bin/python
# -*- coding: ISO-8859-1 -*-

print "Résolution d'une équation du type ax + b = 0 "
a = input ("paramètre a: ")
b = input ("paramètre b: ")

if (a <> 0):
    solution = -b/a
else:
    if (b == 0):
        solution = "indéterminé"
    else:
        solution = "impossible"

print "La solution est ", solution

  • Vérifie que tu peux prévoir ce qui se passera lors de l'éxécution de ce programme.
  • Enregistre une dernière fois le document et exécute le programme equation.py.

Quand le programme fonctionne correctement dans tous les cas possibles et que tu comprends bien son fonctionnement, passe à la page suivante. Vers la page suivante Page suivante


Dernière modification 13/03/2017 Test dans /info ...