Python en mathématiques - Niveau 1

Exercices sur l'affectation des variables

Travail sur un entier

On a affecté à n un entier naturel. Sans tester sur machine, anticiper l'effet des instructions suivantes :

  1. n = n // 10
  2. n = n % 10
  • Question 1
  • Question 2
Le contenu de la boîte n est remplacé par le nombre de dizaines de l'ancien contenu.
Le contenu de la boîte n est remplacé par le chiffre des unités de l'ancien contenu.

Augmentation en pourcentage

Une quantité Q augmente de 20 %.

Donner différentes syntaxes possibles pour traduire cela à l'aide d'une variable Python nommée q.

  • Des codes possibles

Voici différentes syntaxes :


q  = q + 20/100 * q
				

augmentation_absolue = 20/100 * q
q = q + augmentation_absolue
				

coef_multiplicateur = 1 + 20/100
q = q * coef_multiplicateur
				

q = q * 1.2
				
On peut également utiliser une syntaxe raccourcie pour cette dernière version:

q *= 1.2

Algorithme à traduire

Voici un algorithme (peu utile) comme on en trouve dans de nombreux manuels.


a ← n+1
b ← a*2
c ← b-4
	
  1. Quelle sera la valeur contenue dans la variable c si la variable n contient la valeur 5 avant ces instructions ?
  2. Traduire cet algorithme en langage Python (en affectant 5 à n) où la valeur finale de la variable c est révélée par la console.
  3. Exprimer le contenu de la variable c en fonction de n.
  • Une solution du 2°/ et du 3°/
  • Une meilleure solution pour le 2°/
>>> n = 5

>>> a = n + 1

>>> b = a * 2

>>> c = b - 4

>>> c
8			

La variable c contiendra la valeur 2*n-2.

Le programme de mathématiques 2019 préconise le recours à une fonction. On pourra donc définir la fonction f() suivante :


def f(n):
    a = n+1
    b = a*2
    c = b-4
    return c
	

On sauvegarde ensuite ce programme puis on l'exécute.
Dans la console, après les chevrons, on entre f(5). La valeur obtenue est alors affichée dans la console :

>>> f(5)
8

On peut alors demander d'exprimer f(n) en fonction de n : $f(n) = 2 n - 2$.

Échange de valeurs Plus tard !

Dans la plupart des langages, pour échanger les valeurs (les contenus) de deux variables, on doit passer par une variable intermédiaire (pour échanger le contenu de deux verres pleins, on doit disposer d'un verre vide).

Les valeurs initiales 2 et 3 ci-dessous ont été choisies à titre d'exemple :


# valeurs initiales de a et b :
a ← 2				# verre de jus d'orange
b ← 3				# verre de jus de pomme

# échange des valeurs de a et b :
c ← a				# on vide le jus d'orange dans le verre vide c
a ← b				# on peut maintenant verser le jus de pomme dans le verre a   
b ← c				# et le verre b reçoit maintenant le jus d'orange 

	

Réalisez cet échange en langage Python sans variable intermédiaire.

  • Une solution
  • Une autre solution

On utilise l'affectation simultanée : magique !

>>> a = 2

>>> b = 3

>>> a, b = b, a

>>> a
3

>>> b
2
	

On utilise des opérations algébriques, mais ce n'est valable qu'à condition d'échanger des valeurs numériques.

>>> a = 2

>>> b = 3

>>> b = a + b

>>> a = b - a

>>> b = b - a

>>> a
3

>>> b
2