L'alternative simple avec Delphi Pascal

Analyse du problme et de sa rsolution

Mthode de travailDonnes

  1. le nombre de doigts montrs par le joueur A
  2. le nombre de doigts montrs par le joueur B

Rsultat

Le nom du gagnant

Rsolution

  1. Prendre connaissance du nombre de doigts montrs par le joueur A.
  2. Prendre connaissance du nombre de doigts montrs par le joueur B.
  3. Calculer une information complmentaire: la somme des nombres de doigts montrs.
  4. communiquer le nom du gagnant: si la somme est paire, dire que le joueur A est gagnant, sinon dire que le joueur B est gagnant.

Comment faire faire?

S'il nous est assez facile d'exprimer la faon de rsoudre ce problme par nous-mmes, il se pose maintenant le problme de savoir comment faire rsoudre le problme par un ordinateur.

Nous reconnaissons cependant une situation dj bien connue et tudie dans le cadre de l'tude du tableur : l'alternative.

L'tape 4 pourrait s'exprimer

Si <la somme est paire>
Alors dclarer que le gagnant est A
Sinon dclarer que le gagnant est B
Fin Si

Cette analyse est absolument imparable et digne d'un gnie, mais a ne nous dit rien sur la faon dont l'ordinateur peut dterminer si un nombre est pair!

Relativement exact! Il va donc peut-tre falloir ruser un peu. Et utiliser les connaissances acquises durant la leon prcdente.

Pair ou impair ?

Comment l'ordinateur peut-il dterminer qu'un nombre est pair?

Par dfinition, un nombre est pair si le reste de la division entire de ce nombre par 2 est nul.

Exemples

Un ordinateur peut calculer le reste d'une division entire. Pour lui faire faire cette opration, on utilise l'oprateur mod.

Traduction

L'expression "la somme est paire" peut donc tre traduite dans un langage mathmatique sous la forme:

(Somme mod 2) = 0

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

Rvision

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

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

Quand la notion "d'expression logique" t'es (re-)devenue familre, passe la page suivante.


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