Variables, types de variables, lecture, écriture (Partie 2/2)


Afin de suivi le cours/TD plus agréable, je vous conseille de lire le guide vidéo disponible en cliquant sur l’image ci-dessous. Vous pouvez par ailleurs optimiser votre espace de travail en ouvrant une fenêtre consacré au guide vidéo et une autre à la lecture de cette page web.


Pour qu’une machine puisse communiquer avec son utilisateur, il est important qu’elle puisse interagir avec ce dernier. Pour cela, il faut que la machine puisse afficher de l’information pour guider l’utilisateur. Pour mener une interaction, il faut que l’utilisateur envoie des informations vers cette machine. Ces informations doivent être stockée en mémoire, afin qu’elles puissent être traitées par la machine. Une fois le traitement de cette information, ou des informations saisit par l’utilisateur, la machine affiche un résultat qui informe l’utilisateur. Ce principe de communication entre l’homme et la machine est la base de l’informatique.

3. Variables et opérations

Comme expliqué ci-dessus, les variables peuvent changer de valeurs au cours d’un programme. Cela est possible en effectuant des opérations sur la variable ou en changeant la valeur par une nouvelle affectation. 

Voir programme ci-dessous :

  • La première instruction age=16 permet de stocker dans un espace mémoire la valeur 16 dans une variable appelée age. 
  • La deuxième instruction print(age) écrit la valeur stockée dans la variable age. C’est-à-dire 16. 
  • La troisième instruction age=18 stocke la valeur 18 dans l’espace mémoire dédié à la variable age. Sa valeur n’est plus 16 mais 18. 
  • La quatrième instruction print(age) écrit la valeur stockée dans la variable age. C’est-à-dire 18. 

Regardons maintenant le programme suivant et exécutons-le.

  • Dans la première instruction : On stocke la valeur 2 dans une variable nommée nombre1. 
  • Dans la deuxième instruction : On stocke la valeur 3 dans une variable nommée nombre2. 
  • Dans la troisième instruction : On stocke la valeur de la variable nombre1 que l’on additionne avec la valeur de la variable nombre2 qui est stockée dans une variable nommée nombre3. 
  • Dans la quatrième instruction : On affiche la valeur de la variable nombre 3.  C’est-à-dire 5 (2+3). 

Pour faire évoluer les valeurs des variables, on utilise ce type d’opérateur. Il en existent plusieurs. Voici un tableau des opérateurs non exhaustif.

Tableau des opérateurs : 

Opérateur Type de variable Rôle 
+ int, float Additionne les valeurs stockées dans les variables. 
 int, float Soustrait les valeurs stockées dans les variables. 
* int, float Multiplie les valeurs stockées dans les variables. 
/ int, float Divise les valeurs stockées dans les variables. 
** int, float   Opérateur des puissances :  Variable1**variable2 (variable1variable2). 
+ str Concaténation de chaîne de caractères. 
… …  

Pour résumer, ces opérateurs, exécuter le programme suivant :

On obtient l’affichage des opérations : 2+3; 2-3; 2X3; 2/3; 23

Remarque : L’opération 2/3, nous donne un résultat arrondi. Il est à noter que certains calculs mathématiques en python ne donneront que des approximations. Cela est dû à la conversion des nombres décimaux en binaires. La virgule flottante peut être inexacte. Pour les plus curieux vous pouvez lire l’article en cliquant ici (c’est assez compliqué).

Si votre programme utilise l’opérateur + et que vos variables sont de types chaines de caractères. Le résultat sera une concaténation de ses deux chaines. La concaténation est l’opération qui va « fusionner » vos chaines de caractères en une seule et même chaine.

Exemple :

Dans une opération, il est possible de réaffecter une valeur à une variable en exploitant celle déjà stockée dans la mémoire vive.

Exemple :

  • Première instruction : On stocke dans la variable mon_argent la valeur 100. 
  • Deuxième instruction :  On additionne à la valeur stockée dans la mémoire vive de la variable mon_argent la valeur 20. Ensuite le résultat de cette opération est stocké dans l’espace mémoire dédié à la variable mon_argent. En outre l’opération est toujours exécutée en premier lieu avant l’affectation. 
  • Troisième instruction : On affiche la valeur de la variable mon_argent. (100+20=120) 

Exercice 3 

Créer un programme composé des variables suivantes : 

  • nb1 ayant comme valeur 5. 
  • nb2 ayant comme valeur 8. 
  • nb3 ayant comme valeur 3. 
  • somme variable à laquelle on affecte l’addition des variables nb1, nb2 et nb3.  Le programme affiche en sortie la valeur de la variable somme. 

(En utilisant l’éditeur ci-dessous)   

Cliquer sur le + pour obtenir la réponse :

Exercice 4

1) Tester le programme ci-dessous.

2) Dérouler le programme. C’est-à-dire expliquer le rôle de chacune des instructions du programme.  

Cliquer sur le + pour obtenir la réponse :

Chaque numéro correspond à l’instruction exécutée par le programme.

1) On affecte à une variable nommée a la valeur 5.

2) On affecte à une variable nommée b la valeur 6.

3) On affecte à une variable nommée c la valeur de la variable a, c’est-à-dire 5.

4) On affecte à une variable nommée a la valeur de la variable b, c’est-à-dire 6.

5) On affecte à une variable nommée b la valeur de la variable c, c’est-à-dire 5.

6) On affiche la chaine de caractère : « La valeur de la variable a est égale à » suivi de la valeur de variable a, c’est-à-dire 6.

7) On affiche la chaine de caractère : « La valeur de la variable a est égale à » suivi de la valeur de variable b, c’est-à-dire 5.

Le programme ci-dessus est appelé algorithme de permutation de variables.

4. Lecture/flux d’entrée

Cours 

Pour amener une interaction entre l’ordinateur et l’utilisateur. Il est important que ces deux interlocuteurs puissent communiquer. Pour cela, l’utilisateur peut saisir des informations, en général à l’aide d’un clavier ou d’un autre périphérique (manettes, souris, micro, etc). Ces informations sont stockées dans des variables et traitées par un programme.  

L’ordinateur lit ses informations. On parle alors de lecture. L’utilisateur entre des informations dans l’ordinateur. On parle alors de flux d’entrée

Voici un programme permettant de saisir une valeur : 

  • La première instruction : affiche la chaine de caractère “Saisir un nombre entier”. 
  • La deuxième instruction : permet de stocker une valeur dans la variable a. 
  • La troisième instruction : affiche la chaine de caractère “Le nombre saisit est : ” suivit de la valeur de la variable a. 

Nous allons revenir sur la fonctionnalité de la deuxième instruction. Et observer comment cette dernière s’écrit. 

Remarque : Dans l’instruction input(), aucune information est mise entre ses parenthèses. Pourtant, il est possible d’y ajouter une chaine de caractère. 

Notre programme peut se transformer de la façon suivante : 

Afin se familiariser avec cette instruction, voici plusieurs exemples d’applications. 

Exemple 4 :

Taper votre nom en exécutant le programme.

Remarque : C’est grâce aux flux d’entrées et de sorties que l’interaction entre homme et machines, ainsi que machines et machines sont possibles.

Exemple complet :


Exercice 5 

On considère le programme suivant :   

1) Tester le programme ci-dessous. Quel est son rôle ? 

2) Tester le programme en saisissant des nombres décimaux. Que se passe-t-il ?  

3) Corriger le programme afin qu’il puisse accepter des nombres décimaux.  

Cliquer sur le + pour obtenir la réponse :

1) Le rôle du programme est d’afficher le résultat d’une multiplication de deux nombres saisit par l’utilisateur.

2) Si l’on saisit deux nombres décimaux, on obtient un message d’erreur. En effet, le programme demande de saisir deux valeur entière, car les variables sont de type int.

3) Il faut changer à la ligne 2 et 3 le type de variable. On change le type int en float afin de pouvoir saisir des nombres décimaux.

Exercice 6 

Créer un programme avec deux variables flottantes nommées cote et aire. L’utilisateur saisit la valeur de la variable cote.   Ce programme doit donner la valeur de l’aire d’un carré de côté égale à la valeur de la variable cote. 

Cliquer sur le + pour obtenir la réponse :

Exercice 7 

Créer un programme avec trois variables flottantes nommées longueur, largeur et aire. L’utilisateur saisit la valeur des variables longueur et largeur.   Ce programme doit donner la valeur de l’aire d’un rectangle de largeur égale à la valeur de la variable largeur et de longueur égale à la valeur de la variable longueur. 

Cliquer sur le + pour obtenir la réponse :

Exercice 8 

Créer un programme avec deux variables de type str nommées prenom et nom. L’utilisateur saisit la valeur des variables prenom et nom.   Ce programme doit demander à l’utilisateur son prenom et son nom. Il affichera ensuite la chaine de caractère “Salut !” suivi du prenom et du nom saisit par l’utilisateur.  

Cliquer sur le + pour obtenir la réponse :

Exercice 9 

On considère le programme suivant :  

1) Tester le programme ci-dessous et dérouler-le. C’est-à-dire expliquer le rôle de chacune des instructions du programme.

2) Modifier le programme de tel façon à ce qu’il puisse rajouter de l’argent de son coffre-fort. Attention, le texte affiché par l’ordinateur doit être cohérent avec la situation. 

Cliquer sur le + pour obtenir la réponse :
1)
Ligne 1 : On affecte la valeur 10000 à la variable mon_coffre_fort.

Ligne 2 : On affiche la chaine de caractère “Combien de pieces d’or souhaitez-vous retirer de votre coffre fort ? « . On affecte la valeur saisit par l’utilisateur à la variable pieces.

Ligne 3 : On affecte la valeur de la variable mon_coffre_fort moins la valeur de la variable pieces à la variable mon_coffre_fort.

Ligne 4 : On affiche la chaine de caractère « Vous avez retirer  » suivit de la valeur de la variable pieces suivit de la chaine de caractère  » pieces d’or. Il vous reste  » suivit de la valeur de la variable mon_coffre_fort suivit de la chaine de caractère  » pieces d’or ! »

2)