Fiche de cours

Les variables en algorithmique- Terminale- Mathématiques

Lycée   >   Terminale techno   >   Mathématiques   >   Les variables en algorithmique- Terminale- Mathématiques

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectifs
  • Identifier et utiliser les différents types de variables.
  • Affecter un nombre aléatoire à une variable.
  • Comprendre et utiliser la notion de compteur.
  • Comprendre et utiliser la notion d’accumulateur.
Points clés
  • Une variable est une « case » de la mémoire de l’ordinateur. On peut lui affecter différentes valeurs : des nombres, des lettres, des mots, des phrases…
    En langage Python, l’affectation d’une variable s’effectue avec le signe =.
  • Parmi les variables numériques, il y a :
    • les variables de type entier : elles stockent des nombres entiers écrits sans virgule ;
    • les variables de type flottant : elles stockent des nombres écrits avec une virgule.
  • Parmi les variables non numériques, il y a :
    • les variables de type chaine de caractères : elles contiennent des symboles ou des lettres. On les écrit entre guillemets "" ;
    • les variables de type booléen : elles contiennent seulement deux valeurs : True ou False (vrai ou faux). Elles permettent de tester des assertions.
  • Dans un programme, on peut être amené à faire une itération, c’est-à-dire une boucle qui répète plusieurs fois le même calcul. Il est alors fréquent d’utiliser une variable comme compteur ou comme accumulateur.
    Pour cela, si à chaque tour de boucle on doit ajouter 1 à une variable k, on écrit : k←k+1.
  • Soient a et b deux nombres entiers (ou deux variables de type entier) : la fonction randint(a,b) renvoie un nombre entier aléatoire compris entre a et b (inclus).
    La fonction randint() est très utile lorsque l’on veut simuler une expérience aléatoire, comme lancer une pièce équilibrée et noter le résultat obtenu (« pile » ou « face »).
  • La fonction random() retourne un nombre réel aléatoire compris entre 0 et 1 (inclus). Elle est très utile lorsque l’on veut simuler une épreuve de Bernoulli.
Pour bien comprendre
  • Notions d’algorithme vues au collège avec Scratch
  • Schéma de Bernoulli
1. Qu’est-ce qu’une variable ?
a. Définition
Une variable est une « case » de la mémoire de l’ordinateur. On peut lui affecter différentes valeurs : des nombres, des lettres, des mots, des phrases…
En langage Python, l’affectation d’une variable s’effectue avec le signe =.
Remarques
  • Dans la suite de la leçon, on distingue le langage naturel qui permet à tous les programmeurs de comprendre et le langage Python, spécifique au langage de programmation Python.
  • Dans le langage Python, A et a ne sont pas les mêmes variables. La majuscule compte.
Exemples
  • À la variable n, on affecte la valeur 12.
  • À la variable Couleur, on affecte la valeur "Bleu".
Langage naturel Langage Python
n←12
Couleur←"Bleu"
n=12
Couleur="Bleu"
b. Variables numériques et non numériques

Il existe plusieurs types de variables, dont les variables numériques et les variables non numériques.

Parmi les variables numériques, il y a :
  • les variables de type entier (integer, en anglais) : elles stockent des nombres entiers écrits sans virgule ;
  • les variables de type flottant (floating-point number, en anglais) : elles stockent des nombres écrits avec une virgule.
Exemples
Variables de type entier : 3 ; –10 ; –150…
Variables de type flottant : 3,12 ; –10,45 ; –150,00…
Remarque
Les variables de type entier s’écrivent toujours sans virgule.
Mathématiquement, 3,0 est un nombre entier mais pour l’ordinateur, comme il contient une virgule c’est une variable de type flottant.
Parmi les variables non numériques, il y a :
  • les variables de type chaine de caractères (character string, en anglais) : elles contiennent des symboles ou des lettres. On les écrit entre guillemets "" ;
  • les variables de type booléen (boolean data, en anglais) : elles contiennent seulement deux valeurs : True ou False (vrai ou faux). Elles permettent de tester des assertions.
Remarque
Voici différents tests qui engendrent des variables de type booléen :          
Assertion Signification
x==y x et y sont égaux
x!=y x et y sont différents
x<y x est strictement inférieur à y
x>y x est strictement supérieur à y
x<=y x est inférieur ou égal à y
x>=y x est supérieur ou égal à y
Exemples
Variables de type chaine de caractères : “Bonjour”, “12”, “y”….
Variables de type booléen :
L1   b=2
L2   c=3
L3   a=b==c
L4   print(a)
L5   False

À la ligne 3, on affecte à la variable a une assertion : « b et c sont égaux ».
On demande d’afficher la valeur prise par a à la ligne 4.
À la ligne 5, a affiche False car 2 ≠ 3.
c. Compteur et accumulateur
Dans un programme, on peut être amené à faire une itération, c’est-à-dire une boucle qui répète plusieurs fois le même calcul. Il est alors fréquent d’utiliser une variable comme compteur ou comme accumulateur.
Pour cela, si à chaque tour de boucle on doit ajouter 1 à une variable k, on écrit : k←k+1.
Exemple
On dépose 2000 € dans une banque, à un taux d’intérêt de 1 %.
On calcule au bout de combien d’années on dépassera 2100 €.
L1   capital=2000
L2  
n=0
L3  
while capital<2100:
L4      i=i+1
L5     
capital=capital*1.01
L6  
print(i)

À la ligne 4, on utilise la variable i comme compteur dans la boucle. En effet, chaque tour dans la boucle correspond à une année, et i « compte » donc le nombre d’années écoulées.
Pour cela, on écrit i=i+1, c’est-à-dire que la nouvelle valeur de i va être égale à l’ancienne + 1.
À la ligne 5, la variable capital est quant à elle est utilisée en tant qu’accumulateur. Elle ne compte pas, elle stocke la valeur du capital de l’année précédente pour calculer celle de l’année en cours.
2. Affecter un nombre entier aléatoire à une variable
a. Fonction randint()
Soient a et b deux nombres entiers (ou deux variables de type entier) : la fonction randint(a,b) renvoie un nombre entier aléatoire compris entre a et b (inclus).
Remarque
La fonction randint() provient de la librairie random, donc :
  • avant de l’utiliser, il faut importer la librairie random avec la commande import random (en informatique, une librairie est une sorte de répertoire avec des fonctions) ;
  • on voit souvent écrit random.randint, cela indique à l’ordinateur d’utiliser la fonction randint de la librairie random. Il est possible d’écrire directement randint().
Exemple
L1   import random
L2   a=random.randint(0,10)
L3   print(a)
L4   3

À la ligne 2, on affecte à la variable a un nombre entier aléatoire (tiré au hasard) entre 1 et 10.
À la ligne 4, a prend la valeur 3.
b. Simuler un tirage aléatoire

La fonction randint() est très utile lorsque l’on veut simuler une expérience aléatoire, comme lancer une pièce équilibrée et noter le résultat obtenu (« pile » ou « face »).

Exemple 1
On considère l’expérience aléatoire qui consiste à lancer une pièce équilibrée et à noter le résultat obtenu (« pile » ou « face »). Pour simuler informatiquement cette expérience, on fait correspondre à « pile » et 1 à « face ».

On simule 20 lancers d’une pièce équilibrée en tirant aléatoirement un nombre entier compris entre 0 et 1 grâce à une boucle for.
On appelle k la variable qui « compte » le nombre de « face ».
L1   import random
L2   n=20
L3   k=0
L4   for i in range(n):
L5      a=random.randint(0,1)
L6      if a==1:
L7         k=k+1
L8   print(k)

À chaque tirage, on regarde si la variable a qui représente le côté de la pièce est égale à 1. Si c’est le cas, on ajoute 1 à la variable k grâce à la formule de la ligne 7. Cela signifie que la variable k prend son ancienne valeur à laquelle on ajoute 1.
Exemple 2
On simule cette fois 20 lancers d’un dé à 6 faces.
La variable k compte le nombre de fois où l’on obtient la face 6.
L1   import random
L2   n=20
L3   k=0
L4   for i in range(n):
L5     a=random.randint(1,6)
L6     if a==6:
L7         k=k+1
L8   print(k)

À chaque tirage, on regarde si la variable a qui représente la face du dé est égale à 6. Si c’est le cas, on ajoute 1 à la variable k qui compte le nombre de 6.
3. Affecter un nombre entier aléatoire à une variable
a. Fonction random()
La fonction random() retourne un nombre réel aléatoire compris entre 0 et 1 (inclus).
Remarque
À la différence de la fonction randint(), qui retournerait 0 ou 1, la fonction random() retourne n’importe quel nombre réel compris entre 0 et 1 : par exemple, 0,502.
Exemple
L1   import random
L2   a=random.random()
L3   print(a)
L4   0,2473961627962299
À la ligne 2, on affecte à la variable a un nombre aléatoire réel compris entre 0 et 1.
À la ligne 4, on obtient : 0,2473961627962299.
b. Simuler une épreuve de Bernoulli

La fonction random() est très utile lorsque l’on veut simuler une épreuve de Bernoulli.

Rappel
Une épreuve de Bernoulli de paramètre p est une expérience aléatoire qui admet deux issues contraires :
  • un succès S de probabilité p ;
  • un échec S de probabilité 1 – p.
Exemple
On simule le lancer d’un dé à 4 faces.
On considère comme un succès « obtenir un 2 ».
Obtenir n’importe quelle autre face est considéré comme un échec.
p est la probabilité de succès : p = = 0,25.
L1   import random
L2   a=random.random()
L3   if a <=0.25:
L4      print("Nous avons obtenu un 2")
L5   else:
L6      print("Nous n'avons pas obtenu de 2")

Aux lignes 3 et 4, dans la boucle if, on teste si a 0,25. Dans ce cas, on considère que l’expérience est un succès.
Dans le cas contraire, aux lignes 5 et 6, on utilise else qui veut dire « sinon ». L’expérience est alors un échec.
En effet, 0,25 est la probabilité d’obtenir un succès, donc on considère que tous les nombres aléatoires compris entre 0 et 0,25 sont un succès et que tous ceux compris entre 0,25 et 1 sont un échec.

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Plongez dans l'univers de myMaxicours et découvrez une approche innovante du soutien scolaire en ligne, conçue pour captiver et éduquer les élèves de CP à la terminale. Notre plateforme se distingue par une riche sélection de contenus interactifs et ludiques, élaborés pour stimuler la concentration et la motivation à travers des parcours d'apprentissage adaptés à chaque tranche d'âge. Chez myMaxicours, nous croyons en une éducation où chaque élève trouve sa place, progresse à son rythme et développe sa confiance en soi dans un environnement bienveillant.

Profitez d'un accès direct à nos Profs en ligne pour une assistance personnalisée, ou explorez nos exercices et corrigés pour renforcer vos connaissances. Notre assistance scolaire en ligne est conçue pour vous accompagner à chaque étape de votre parcours éducatif, tandis que nos vidéos et fiches de cours offrent des explications claires et concises sur une multitude de sujets. Avec myMaxicours, avancez sereinement sur le chemin de la réussite scolaire, armé des meilleurs outils et du soutien de professionnels dédiés à votre épanouissement académique.

Fiches de cours les plus recherchées

Mathématiques

Les fonctions en algorithmique- Terminale- Mathématiques

Mathématiques

Introduction aux algorithmes- Terminale- Mathématiques

Mathématiques

Exploiter la relation y = f(x) d'une fonction- Terminale- Mathématiques

Mathématiques

Fonction logarithme décimal- Terminale- Mathématiques

Mathématiques

Le vocabulaire des probabilités

Mathématiques

Utilisation du tableur pour des tableaux croisés

Mathématiques

Isoler une variable

Mathématiques

Appliquer une formule

Mathématiques

Coefficient directeur de la tangente à une courbe en un point

Mathématiques

Somme des termes d'une suite arithmétique- Terminale- Mathématiques

Mathématiques

Somme des termes d'une suite géométrique- Terminale- Mathématiques

Mathématiques

Fonctions exponentielles de base q

Mathématiques

La fonction inverse- Terminale- Mathématiques

Mathématiques

Ajustement affine