for i in range(7):
print(i)
0
1
2
3
4
5
6
**Contenus**
|
**Capacités attendues**
|
---|---|
Boucles bornées et non bornées Définitions et appels de fonctions |
Écrire et développer des programmes pour répondre à des problèmes et modéliser des phénomènes physiques, économiques et sociaux. |
Dans ce chapitre, nous allons nous intéresser aux boucles qui permettent de répéter des instructions dans un programme, ainsi qu’aux fonctions qui permettent d’exécuter des portions de programme à la demande.
Les boucles permettent de répéter des blocs d’instructions.
Il en existe deux types:
for
.while
.for
Lorsqu’on connait le nombre de répétitions à effectuer, on utilise la boucle for
associée à la fonction range()
.
Pour répéter 7 fois un bloc d’instructions, on utilise:
for i in range(7):
print(i)
0
1
2
3
4
5
6
On peut aussi réaliser des boucles sur des types construits qui seront vus en première.
Sur des chaînes de caractères:
for lettre in "Bonjour!":
print(lettre)
B
o
n
j
o
u
r
!
Sur des listes:
for premier in [2, 3, 5, 7, 11, 13]:
print(premier)
2
3
5
7
11
13
while
Lorsqu’on ne connait pas le nombre de répétitions à effectuer, on utilise la boucle while
associée à une variable de contrôle.
Voici un programme qui permet de vérifier la saisie d’un mot de passe par un utilisateur.
mdp = "" # initialisation
while mdp != "azerty": # condition d'arrêt de la boucle
mdp = input("Entrez votre mot de passe.") # mise à jour de
# la variable de boucle
# On sort de la boucle
print("Vous êtes connecté")
Il s’agit de blocs d’instructions exécutés à la demande, on les définit par le mot-clef def
.
# définition de la fonction
def dit_bonjour(prenom):
print("Bonjour " + prenom)
Nous venons de définir la fonction, mais pour l’instant, il ne se passe rien.
Pour exécuter le code de la fonction, il faut maintenant appeler la fonction avec un paramètre pour l’exécuter.
# appel de la fonction avec l'argument Ada
dit_bonjour("Ada")
Bonjour Ada
return
Au lieu d’afficher une valeur, il est préférable de renvoyer une valeur grâce au mot-clé return
.
def périmètre(rayon):
p = 2*3.14*rayon
return p
Cette fois-ci l’appel renverra la valeur du périmètre, on peut alors l’affecter à une variable.
# on appelle la fonction avec l'argument 0.5
p = périmètre(0.5)
print(p)
3.14
Une fonction peut accepter un nombre quelconque de paramètres, il suffit de les séparer par des virgules.
Avec deux paramètres.
def surface_rectangle(l, L):
return l*L
# appel
surface_rectangle(2, 3) # renvoie 6
6
Avec aucun paramètre:
import time
def affiche_heure():
print(time.asctime())
# Pour l'appel on met les parénthèses même s'il n'y a pas d'arguments
affiche_heure()
Fri Sep 29 15:24:24 2023