Algorithmique et programmation
Variables et affectation, instructions conditionnelles, boucles bornées et non bornées, fonctions en Python, appliquées à des situations professionnelles (doses, budgets, suivi de températures).
1. Variables et affectation
Définition
Une variable est une case mémoire qui porte un nom et contient une valeur. L'affectation x = 5 range la valeur $5$ dans la variable x (on lit « x prend la valeur 5 »). Types usuels : entier (int), décimal (float), texte (str), booléen (True/False).
Exemple · Calcul de l'IMC
masse = 68
taille = 1.70
imc = masse / taille ** 2
print(round(imc, 1)) # affiche 23.52. Instruction conditionnelle
Propriété · Si… alors… sinon
Le bloc indenté n'est exécuté que si la condition est vraie :
if temperature >= 38:
print("fièvre")
else:
print("pas de fièvre")Comparaisons : == (égal), != (différent), <, <=, >, >=.
3. Boucles
Propriété · Boucle bornée (for)
for i in range(n): répète le bloc $n$ fois, avec i prenant les valeurs $0, 1, \ldots, n - 1$.
Propriété · Boucle non bornée (while)
while condition: répète le bloc tant que la condition est vraie. Elle sert à chercher un seuil : « au bout de combien de mois… ? ».
Exemple · Seuil d'épargne
capital = 500
mois = 0
while capital < 1000:
capital = capital + 40
mois = mois + 1
print(mois) # 134. Fonctions
Définition
Une fonction regroupe des instructions réutilisables ; elle reçoit des paramètres et renvoie un résultat avec return :
def prix_ttc(prix_ht, taux):
return prix_ht * (1 + taux / 100)
prix_ttc(50, 20) # 60.0Activité · Programmer un débit de perfusion
debit(volume, duree) qui renvoie le débit en mL/h d'une perfusion de volume mL passée en duree heures, puis la tester avec $500$ mL en $4$ h.def debit(volume, duree): return volume / duree ; debit(500, 4) renvoie $125$ mL/h.Attention · Indentation
En Python, l'indentation (décalage de $4$ espaces) délimite les blocs : une mauvaise indentation change le sens du programme ou provoque une erreur.
S'entraîner
Exercices corrigés
🎓 20 exercices corrigés et un quiz vous attendent dans ce chapitre.
Créez votre compte gratuit pour voir les corrections, faire les quiz et suivre votre progression.
Valeur finale d'une variable
★☆☆Que contient a après : a = 3 ; a = a + 4 ; a = 2 * a ?
Échanger deux variables
★★☆On veut échanger les valeurs de x et y. Pourquoi x = y puis y = x ne convient-il pas ? Proposer une solution.
Calcul de l'IMC
★☆☆Avec le programme du cours, quel IMC obtient-on pour $90$ kg et $1{,}80$ m ?
Type d'une variable
★☆☆Donner le type de : 12 ; 12.5 ; "douze" ; 12 > 5.
Condition de fièvre
★☆☆Qu'affiche le programme du cours pour une température de $37{,}6$ ? de $38$ ?
Dose plafonnée
★★☆D'après l'organigramme du cours, quelle dose obtient-on pour un patient de $50$ kg ? de $80$ kg ?
Traduire l'organigramme
★★☆Écrire en Python l'algorithme de l'organigramme du cours.
Catégorie d'IMC
★★☆Compléter pour afficher « maigreur » si $\text{imc} \lt 18{,}5$, « normal » jusqu'à $25$, « surpoids » au-delà.
Boucle for
★☆☆Qu'affiche for i in range(4): print(i * 10) ?
Somme de valeurs
★★☆Que vaut s à la fin : s = 0 ; for k in range(1, 6): s = s + k ?
Seuil d'épargne
★★☆Dans l'exemple du cours, pourquoi obtient-on $13$ mois ? Que faudrait-il changer pour un objectif de $1\,500$ € ?
Population de bactéries
★★★Une culture compte $200$ bactéries et double toutes les heures. Écrire un programme qui affiche le nombre d'heures nécessaires pour dépasser $10\,000$ bactéries, et donner le résultat.
Fonction prix TTC
★☆☆Que renvoie prix_ttc(80, 5.5) avec la fonction du cours ?
Fonction de conversion
★★☆Écrire une fonction en_ml(cl) qui convertit des centilitres en millilitres.
Débit de perfusion
★★☆Avec la fonction debit de l'activité, que renvoie debit(250, 2) ? Écrire une fonction duree(volume, debit).
Repérer une erreur
★★☆Pourquoi ce programme provoque-t-il une erreur ?
if note >= 10
print("admis")Boucle infinie
★★☆Pourquoi ce programme ne s'arrête-t-il jamais ? x = 1 ; while x > 0: x = x + 1
Moyenne de températures
★★★Écrire une fonction moyenne(liste) qui renvoie la moyenne d'une liste de nombres (sans utiliser sum), puis l'appliquer à [37.2, 37.8, 38.4, 37.6].
Compter les valeurs
★★★Écrire un programme qui compte combien de températures de la liste [37.2, 38.1, 39.0, 37.6, 38.5] sont supérieures ou égales à $38$.
Tableau de suivi
★★☆Qu'affiche ce programme ?
stock = 120
for jour in range(1, 4):
stock = stock - 25
print(jour, stock)Vérifier
Avez-vous bien compris ?
Répondez au quiz : la correction s'affiche immédiatement.