Algorithmique Programmation
1ERE-STI2D • MATHS — Learna
Suivez votre progression
Connectez-vous pour enregistrer votre progression et vos tentatives de quiz.
Cours — Algorithmique et programmation
Algorithmes • variables • affectations • conditions • boucles • fonctions • simulations en Python
1) Objectifs du chapitre
Compétences attendues
- comprendre le rôle d’un algorithme ;
- utiliser des variables et des affectations ;
- écrire et interpréter des conditions ;
- utiliser des boucles bornées ou conditionnelles ;
- écrire des fonctions simples en Python ;
- simuler une expérience aléatoire ou numérique.
Pourquoi c’est utile ?
En STI2D, l’algorithmique permet de modéliser, automatiser des calculs, tester des situations et simuler des expériences.
C’est un outil pratique pour les mathématiques, les sciences et la technologie.
Idée-clé : un programme suit une suite d’instructions précises, ordonnées et sans ambiguïté.
2) Qu’est-ce qu’un algorithme ?
Un algorithme est une suite finie d’instructions permettant de résoudre un problème ou d’effectuer une tâche.
Exemple courant
Pour calculer l’aire d’un rectangle :
- lire la longueur ;
- lire la largeur ;
- multiplier ;
- afficher le résultat.
Traduction Python
L = 8
l = 3
A = L * l
print(A)
3) Variables
Une variable est un nom qui permet de stocker une valeur.
Exemple
n = 5
prix = 12.5
nom = "Paul"
Rôle
Une variable peut contenir un nombre, un texte, ou le résultat d’un calcul.
Bon réflexe
Choisir des noms clairs :
somme,
compteur,
temperature.
4) Affectation
Une affectation donne une valeur à une variable.
x = 7
x = x + 3
Après la première ligne, \(x\) vaut 7.
Après la seconde, \(x\) vaut 10.
En programmation,
x = x + 3 a du sens.
Ce n’est pas une égalité mathématique classique, mais une mise à jour.
5) Conditions
Une condition permet de faire un choix selon qu’une situation est vraie ou fausse.
Structure
if x > 0:
print("positif")
else:
print("négatif ou nul")
Opérateurs utiles
| Écriture Python | Sens |
|---|---|
== | égal à |
!= | différent de |
> | strictement supérieur |
< | strictement inférieur |
>= | supérieur ou égal |
<= | inférieur ou égal |
6) Boucles
Boucle bornée
On répète un nombre connu de fois.
for k in range(5):
print(k)
Ici, on affiche 0, 1, 2, 3, 4.
Boucle conditionnelle
On répète tant qu’une condition est vraie.
n = 0
while n < 5:
print(n)
n = n + 1
Avec
while, il faut toujours penser à faire évoluer la variable, sinon la boucle peut devenir infinie.
7) Fonctions en Python
Une fonction permet de regrouper des instructions pour les réutiliser.
Exemple
def carre(x):
return x * x
Utilisation
print(carre(4)) # affiche 16
8) Simulation
En mathématiques, simuler consiste à reproduire une expérience de manière aléatoire ou répétée à l’aide d’un programme.
Exemple : simuler un lancer de pièce
from random import randint
x = randint(0, 1)
if x == 1:
print("pile")
else:
print("face")
Exemple plus avancé : compter le nombre de piles sur 10 lancers
from random import randint
compteur = 0
for k in range(10):
x = randint(0, 1)
if x == 1:
compteur = compteur + 1
print(compteur)
9) Méthode de résolution
Quand on lit un algorithme
- repérer les variables ;
- repérer les valeurs initiales ;
- suivre les affectations ligne par ligne ;
- regarder la condition ou la boucle ;
- interpréter le résultat final.
Quand on écrit un programme
- identifier les entrées ;
- définir les variables utiles ;
- choisir la bonne structure : test, boucle, fonction ;
- prévoir l’affichage du résultat.
Bon réflexe : avant d’écrire du Python, écrire d’abord la logique du programme en français.
10) Formulaire
Affectation
x = 5
x = x + 1
Condition
if condition:
...
else:
...
Boucle bornée
for k in range(n):
...
Boucle conditionnelle
while condition:
...
Fonction
def f(x):
return ...
Simulation aléatoire
from random import randint
x = randint(0, 1)