QCM : Fondamentaux de la programmation Python — 19 questions

Questions et réponses du QCM

1. Quelle instruction compare deux valeurs et produit un booléen sans modifier une variable ?

x = 5
x += 5
x + 5
x == 5

x == 5

Explication

L'opérateur == teste l'égalité entre deux valeurs et renvoie True ou False. L'opérateur = réalise une affectation et change la valeur stockée dans la variable.

2. Si x vaut 4, quelle valeur obtient-on après l'exécution de x += 1 ?

5
x + 1
4
1

5

Explication

L'instruction x += 1 ajoute 1 à la valeur actuelle de x, donc 4 devient 5. Une affectation indépendante ne réutilisant pas l'ancienne valeur ne décrirait pas cette opération.

3. Quel est le résultat de l'expression « abc » + « def » en Python ?

defabc
abcdef
abcdefabcdefabcdef
abc def

abcdef

Explication

L'opérateur + concatène les deux chaînes dans leur ordre d'apparition, ce qui donne abcdef. La répétition trois fois serait obtenue avec une multiplication par 3.

4. Quelle expression permet d'obtenir le reste de la division euclidienne de 17 par 5 ?

5 % 17
17 % 5
17 // 5
17 / 5

17 % 5

Explication

L'opérateur % renvoie le reste d'une division euclidienne, ici 2. L'opérateur // fournit le quotient entier, tandis que / produit une division classique.

5. Quelle situation décrit une boucle bornée ?

Une boucle qui poursuit son exécution après une erreur
Une boucle qui s'arrête lorsqu'une condition devient imprévisible
Une boucle qui dépend d'une saisie différente à chaque tour
Une boucle dont le nombre de tours est connu avant son exécution

Une boucle dont le nombre de tours est connu avant son exécution

Explication

Une boucle bornée possède un nombre d'itérations déterminé à l'avance. Une boucle dépendant d'une condition ou d'une saisie peut avoir une durée variable.

6. Quelles valeurs sont parcourues par for i in range(2, 8, 2) ?

2, 4, 6 et 8
8, 6 et 4
0, 2, 4 et 6
2, 4 et 6

2, 4 et 6

Explication

La borne de début est incluse et la borne de fin est exclue, avec un pas de 2 ; les valeurs sont donc 2, 4 et 6. La valeur 8 est exclue de cette progression.

7. Quelle méthode calcule la somme des carrés des entiers de 0 à n-1 dans une boucle ?

Initialiser somme à 1 puis ajouter i à chaque tour
Initialiser somme à 0 puis ajouter i**2 à chaque tour
Initialiser somme à n puis soustraire i**2 à chaque tour
Initialiser somme à 0 puis multiplier somme par i à chaque tour

Initialiser somme à 0 puis ajouter i**2 à chaque tour

Explication

La somme recherchée commence à 0 et reçoit, à chaque itération, le carré de l'indice i. Ajouter i ou multiplier la somme ne construit pas une somme de carrés.

8. Que se passe-t-il dans une structure if/elif/else lorsque plusieurs conditions sont vraies ?

Le bloc correspondant à la première condition vraie est exécuté
Le bloc else est exécuté avant les conditions précédentes
Le programme recommence la structure depuis le début
Tous les blocs dont la condition est vraie sont exécutés

Le bloc correspondant à la première condition vraie est exécuté

Explication

La structure examine les conditions dans l'ordre et exécute le bloc associé à la première condition vraie, puis continue après la structure. Les autres branches ne sont pas exécutées dans cette sélection.

9. Quel opérateur teste que deux valeurs sont différentes et renvoie un booléen ?

!=
==
<=
>=

!=

Explication

L'opérateur != vérifie la différence entre deux valeurs et renvoie True ou False. L'opérateur == teste au contraire leur égalité.

10. Quelle instruction permet à une fonction Python de renvoyer explicitement une valeur à l'appelant ?

L'instruction return
L'instruction break
L'instruction while
L'instruction def

L'instruction return

Explication

L'instruction return fournit une valeur au programme appelant et met fin à l'exécution de la fonction. L'instruction def sert à définir la fonction, tandis que break concerne l'arrêt d'une boucle.

11. Quelle caractéristique distingue une procédure d'une fonction qui renvoie explicitement un résultat en Python ?

Elle utilise une boucle while pour transmettre son résultat à l'appelant
Elle se termine sans instruction return explicite et produit None
Elle reçoit des paramètres mais ne peut contenir aucune autre instruction
Elle doit être définie avec break afin de terminer son exécution

Elle se termine sans instruction return explicite et produit None

Explication

Une procédure est assimilée à une fonction sans return explicite, dont la valeur de retour est None en Python. L'absence de résultat explicite ne l'empêche pas de contenir des instructions ou des paramètres.

12. Que se passe-t-il lorsqu'une fonction exécute une instruction return avant la fin de son corps ?

Elle s'arrête immédiatement et ignore les instructions suivantes
Elle reprend son exécution après avoir évalué toutes les instructions suivantes
Elle transmet la valeur puis poursuit le calcul dans la même fonction
Elle transforme automatiquement les instructions suivantes en boucle

Elle s'arrête immédiatement et ignore les instructions suivantes

Explication

L'exécution de return quitte immédiatement la fonction, de sorte que les instructions placées après cette instruction ne sont pas exécutées. La fonction ne poursuit donc pas son corps après avoir renvoyé sa valeur.

13. Que devient une variable locale lorsque l'exécution de la fonction qui l'a créée se termine ?

Elle est déplacée dans la condition de la dernière boucle exécutée
Elle disparaît avec le contexte d'exécution de cette fonction
Elle devient automatiquement une variable globale accessible partout
Elle est conservée comme paramètre de toutes les fonctions suivantes

Elle disparaît avec le contexte d'exécution de cette fonction

Explication

Une variable locale appartient au contexte de la fonction qui la crée et disparaît lorsque cette exécution se termine. Elle ne devient pas automatiquement globale ni disponible dans les autres fonctions.

14. Dans quelle situation une boucle non bornée est-elle particulièrement adaptée ?

Lorsque le nombre de tours ne peut pas être connu à l'avance
Lorsque le programme doit définir une fonction avec plusieurs paramètres
Lorsque chaque instruction doit être exécutée une seule fois
Lorsque le bloc doit s'exécuter avec un nombre fixé de répétitions

Lorsque le nombre de tours ne peut pas être connu à l'avance

Explication

Une boucle non bornée convient lorsque le nombre de répétitions dépend d'une condition et n'est pas connu à l'avance. Un nombre fixé de tours correspond plutôt à une boucle bornée.

15. Selon quelle règle une boucle while décide-t-elle de poursuivre l'exécution de son bloc ?

Elle exécute le bloc selon le nombre de paramètres de la fonction
Elle quitte le bloc dès que sa garde reste vraie
Elle répète le bloc tant que sa garde est vraie
Elle répète le bloc jusqu'à ce que sa garde devienne vraie

Elle répète le bloc tant que sa garde est vraie

Explication

La boucle while évalue sa condition, appelée garde, et répète son bloc tant que cette condition est vraie. Elle ne poursuit donc pas son exécution parce que la garde devient fausse ou reste inchangée.

16. Quelle conséquence produit une condition de boucle while qui reste vraie pendant toute l'exécution ?

Le programme transforme la boucle en fonction sans valeur de retour
Le programme exécute automatiquement une seule itération supplémentaire
Le programme quitte la boucle après avoir évalué la condition suivante
Le programme entre dans une boucle infinie

Le programme entre dans une boucle infinie

Explication

Si la garde d'une boucle while reste toujours vraie, aucune condition ne provoque sa sortie et le programme exécute une boucle infinie. Une itération supplémentaire ne suffit pas à décrire ce comportement.

17. Quelle est l'action immédiate de l'instruction break lorsqu'elle est exécutée dans une boucle ?

Elle ignore la condition de la boucle puis recommence une itération
Elle renvoie automatiquement la dernière valeur calculée par la boucle
Elle arrête la boucle dans laquelle elle est exécutée
Elle arrête la fonction entière et toutes les fonctions appelantes

Elle arrête la boucle dans laquelle elle est exécutée

Explication

L'instruction break force la sortie immédiate de la boucle qui la contient. Contrairement à return, elle n'arrête pas par elle-même toute la fonction englobante.

18. Quelle propriété caractérise un variant utilisé pour justifier l'arrêt d'une boucle ?

C'est une grandeur réelle qui augmente lorsque la condition devient vraie
C'est un compteur entier négatif qui varie après la sortie de la boucle
C'est une valeur booléenne qui reste constante pendant chaque tour
C'est une grandeur entière positive qui diminue à chaque tour

C'est une grandeur entière positive qui diminue à chaque tour

Explication

Un variant est une grandeur entière strictement positive qui décroît à chaque itération, ce qui permet de provoquer la sortie de la boucle. Une grandeur constante ou qui augmente ne fournit pas ce mécanisme de terminaison.

19. Quel rôle l'indentation joue-t-elle dans un programme Python contenant une boucle ?

Elle remplace la condition qui contrôle la répétition du bloc
Elle délimite le bloc et indique les instructions appartenant à la boucle
Elle détermine le nombre de tours que la boucle doit effectuer
Elle convertit automatiquement les instructions du bloc en fonctions

Elle délimite le bloc et indique les instructions appartenant à la boucle

Explication

En Python, l'indentation délimite les blocs de code et indique quelles instructions appartiennent à une boucle ou à une condition. Elle ne fixe pas le nombre d'itérations et ne remplace pas la garde.

Révisez avec les flashcards

Mémorisez les réponses avec 32 flashcards sur Fondamentaux de la programmation Python.

Quelle est la différence entre = et == en Python ?

= attribue une valeur, == compare deux valeurs et renvoie un booléen.

Que fait l'instruction x += 1 en Python ?

Elle augmente la valeur de x de 1.

Que produit l'opération "abc" + "def" en Python ?

La concaténation "abcdef".

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Fondamentaux de la programmation Python.

Voir la fiche →

Cours similaires

Crée tes propres QCM

Importe ton cours et l'IA génère des QCM avec corrections en 30 secondes.

Générateur de QCM