L'alternative en langage Python

Analyse du problème et de sa résolution

Méthode de travailDonnées

  1. le nombre de doigts montrés par le joueur A
  2. le nombre de doigts montrés par le joueur B

Résultat

Le nom du gagnant

Résolution

  1. Prendre connaissance du nombre de doigts montrés par le joueur A.
  2. Prendre connaissance du nombre de doigts montrés par le joueur B.
  3. Calculer une information complémentaire: la somme des nombres de doigts montrés.
  4. Décider qui est le vainqueur: si la somme est paire, dire que le joueur A est gagnant, sinon dire que le joueur B est gagnant
  5. communiquer le nom du gagnant: le joueur A ou le joueur B.

Comment faire faire?

S'il nous est assez facile d'exprimer la façon de résoudre ce problème par nous-mêmes, il se pose maintenant le problème de savoir comment faire résoudre le problème par un ordinateur.

Nous reconnaissons cependant une situation déjà bien connue et étudiée dans le cadre de l'étude du tableur : l'alternative.

L'étape 4 pourrait s'exprimer

Si < la somme est paire >
    Alors déclarer que le gagnant est A
    Sinon déclarer que le gagnant est B
Fin Si

Cette analyse est absolument imparable et digne d'un génie, mais ça ne nous dit rien sur la façon dont l'ordinateur peut déterminer si un nombre est pair!

Relativement exact! Il va donc peut-être falloir ruser un peu. Et utiliser les connaissances acquises durant la leçon précédente.

Pair ou impair ?

Comment l'ordinateur peut-il déterminer qu'un nombre est pair?

Par définition, un nombre est pair si le reste de la division entière de ce nombre par 2 est nul.

Exemples

En Python, on dispose de deux opérateurs:

Ces opérateurs fonctionnent comme la bonne vieille division du début de l'école primaire.

1
7
3
:
8
1
6
·
:
---
---
·
:
21
1
3
:
 
8
:
 
---
:
 
Reste:
5
:
 

173 / 8 = 21, et il reste 5.

c'est-à-dire

173 % 8 = 5


Effectue les opérations indiquées ci-dessous. Clique sur le bouton OK pour vérifier chacune d'elles.

2
1
7
:
9
      
:
---
:
 
Reste:
 
3
2
7
:
8
      
:
:
:
 
Reste:
 
2
1
5
:
11
      
:
---
:
 
Reste:
 

Vérifie les opérations suivantes dans l'interpréteur Python

>>> print 24 % 2
....
>>> print 7 % 2
....

Traduction

L'expression "la somme est paire" peut donc être traduite dans un langage mathématique sous la forme:

(Somme % 2) == 0

Il s'agit d'une expression logique, une expression qui peut être vraie ou fausse.

Ah, je crois que j'ai repéré une faute de frappe. Vous avez écrit deux fois le signe "=" dans l'epression précédente.

Eh bien non, ce n'est pas une faute de frappe. C'est la façon conventionnelle, en Python, d'indiquer une égalité.

En langage Python, les principaux symboles pour les comparaisons s'écrivent:

En français En Python
A est égal à B A == B
A est strictement plus grand que B A > B
A est strictement plus petit que B A < B
A est plus petit ou égal à B A <= B
A est plus grand ou égal à B A >= B
A est différent de B A != B ou A <> B

De cette manière, on distingue bien le symbole de l'affectation "=" du symbole de la comparaison "==".

Révision

Revois les pages 2 à 6 de la leçon concernant l'alternative dans le cadre du tableur.

Comment pourrait-on traduire l'expression logique: " le nombre X est impair " ?
(NombreX % 3) == 0
(NombreX % 2) == 1
(NombreX / 2) == 1

Quand tu as compris la méthode de détermination de la parité d'un nombre, passe à la page suivante. Vers la page suivante Page suivante


Dernière modification 18/08/2016 Test dans /info ...