QCM En PYTHON– Partie 1

Question 1 sur 20
a = 5
b = a − 2
print(a∗b)

  • A 8
  • B 15
  • C 10
  • D 3
B

 

Le code que vous avez fourni fait ce qui suit:

  1. Il définit la valeur de la variable a à 5.
  2. Il soustrait 2 de a et stocke le résultat dans la variable b.
  3. Il multiplie les valeurs de a et b.
  4. Il affiche le résultat de la multiplication, qui est 15.

Donc, essentiellement, le code multiplie 5 par 3 (puisque b est égal à a-2, qui vaut 3 dans ce cas) et affiche le résultat, qui est 15.

Question 2 sur 20
a = 7
a += 2
a = a∗a + 1
print(a)

  • A 82
  • B 5
  • C 90
  • D 6
A

Prenons le code ligne par ligne :

  1. a = 7 : Cette ligne définit la valeur de la variable a à 7.

  2. a += 2 : Cette ligne incrémente la valeur de a de 2. C'est équivalent à a = a + 2.

  3. a = a * a + 1 : Cette ligne multiplie la valeur de a par elle-même, ajoute 1 au résultat, puis stocke le résultat dans la variable a.

  4. print(a) : Cette ligne affiche la valeur de a.

Ainsi, la sortie de ce code serait 60 :

  • La valeur de a est initialement de 7.
  • La deuxième ligne incrémente a de 2, donc a vaut maintenant 9.
  • La troisième ligne multiplie 9 par 9 (ce qui donne 81), ajoute 1 au résultat (pour obtenir 82), puis stocke le résultat dans a.
  • La quatrième ligne affiche la valeur de a, qui est maintenant 82.

Donc la sortie du programme est 82.

Question 3 sur 20
a = 21
b = 5
print( (a//b) + (a%b) )

  • A 5,2
  • B 5
  • C 4
  • D 5,25
B

Prenons le code ligne par ligne :

  1. a = 21 : Cette ligne définit la valeur de la variable a à 21.

  2. b = 5 : Cette ligne définit la valeur de la variable b à 5.

  3. print((a//b) + (a%b)) : Cette ligne effectue deux opérations mathématiques. L'opérateur // effectue une division entière entre a et b, c'est-à-dire qu'il retourne le quotient de la division de a par b sans prendre en compte le reste. Dans ce cas, 21 divisé par 5 est égal à 4, avec un reste de 1. Ainsi, (a//b) évalue à 4.

L'opérateur % calcule le reste de la division de a par b. Ici, le reste est égal à 1. Ainsi, (a%b) évalue à 1.

Enfin, la ligne de code ajoute (a//b) et (a%b) ensemble et affiche le résultat à l'aide de la fonction print(). Dans ce cas, 4 + 1 = 5. Ainsi, la sortie du programme est 5.

Question 4 sur 20
a = 7
if a <= 3:
print(2∗a−1)
elif a <= 10:
print(3∗a−2)
else :
print(4∗a−3)

 


  • A 13
  • B 25
  • C 7
  • D 19
D
  1. a = 7 : Cette ligne définit la valeur de la variable a à 7.

  2. if a <= 3: : Cette ligne vérifie si a est inférieur ou égal à 3. Dans ce cas, cette condition est fausse, car a vaut 7.

  3. print(2*a-1) : Si la condition de la ligne précédente était vraie, cette ligne aurait imprimé 2 fois la valeur de a soustraite de 1, soit 13.

  4. elif a <= 10: : Cette ligne vérifie si a est inférieur ou égal à 10. Cette condition est vraie, car a vaut 7. Ainsi, la suite du code exécutera la ligne suivante.

  5. print(3*a-2) : Cette ligne imprime 3 fois la valeur de a soustraite de 2, soit 19.

  6. else: : Cette ligne est exécutée uniquement si les deux conditions précédentes sont fausses. Dans ce cas, la condition est vraie, car a n'est pas inférieur ou égal à 3 et n'est pas inférieur ou égal à 10.

  7. print(4*a-3) : Cette ligne imprime 4 fois la valeur de a soustraite de 3, soit 25.

Ainsi, la sortie du programme serait 19, car c'est la valeur imprimée par la deuxième ligne print qui correspond à la condition elif a <= 10:.

Question 5 sur 20
for k in range(3):
print(k)

  • A 1/2/3
  • B 0/1/2
  • C 0/3/6
  • D 0/1/2/3
B

Ce code utilise une boucle for pour afficher les valeurs de la variable k pour chaque itération de la boucle. Le code exécutera la boucle trois fois car range(3) crée une séquence de valeurs allant de 0 à 2 (3 valeurs au total).

Ainsi, le code affichera les valeurs de k pour chaque itération de la boucle for, comme suit :

  1. Itération 1 : k est égal à 0. Le code affiche 0.

  2. Itération 2 : k est égal à 1. Le code affiche 1.

  3. Itération 3 : k est égal à 2. Le code affiche 2.

Ainsi, la sortie du programme serait :

0
1
2

 

Question 6 sur 20
for k in range(1 ,10 ,3):
print(k)

  • A 1/4/7
  • B 1/4/7/10
  • C 1/2/3/4/5/6/8/9
  • D 1/10
A

Ce code utilise une boucle for pour afficher les valeurs de la variable k pour chaque itération de la boucle. Le code utilise range(1, 10, 3) pour créer une séquence de valeurs allant de 1 à 10 avec un pas de 3.

Ainsi, le code affichera les valeurs de k pour chaque itération de la boucle for, comme suit :

  1. Itération 1 : k est égal à 1. Le code affiche 1.

  2. Itération 2 : k est égal à 4 (1 + 3). Le code affiche 4.

  3. Itération 3 : k est égal à 7 (4 + 3). Le code affiche 7.

Ainsi, la sortie du programme serait :

1
4
7

 

Question 7 sur 20
somme = 0
for n in range(5):
somme = somme + n∗∗2
print(somme)

  • A 0/1/4/9/16
  • B 30
  • C 55
  • D 0/1/5/14/30
B

 

Ce code utilise une boucle for pour calculer la somme des carrés des nombres de 0 à 4 (inclus). Le code initialise la variable somme à 0 et, à chaque itération de la boucle, ajoute le carré de la valeur de n à la variable somme.

Ainsi, le code affichera la valeur de somme après la fin de la boucle, qui est la somme des carrés des nombres de 0 à 4 (inclus), comme suit :

  1. Itération 1 : n est égal à 0. La variable somme est toujours égale à 0.

  2. Itération 2 : n est égal à 1. La variable somme est maintenant égale à 0 + 1**2, soit 1.

  3. Itération 3 : n est égal à 2. La variable somme est maintenant égale à 1 + 2**2, soit 5.

  4. Itération 4 : n est égal à 3. La variable somme est maintenant égale à 5 + 3**2, soit 14.

  5. Itération 5 : n est égal à 4. La variable somme est maintenant égale à 14 + 4**2, soit 30.

Ainsi, la sortie du programme serait 30, qui est la somme des carrés des nombres de 0 à 4 (inclus).

Question 8 sur 20
k = 0
while k < 6 :
print(k)
k += 2

  • A 0/2/4
  • B 0/2/4/6
  • C 0/1/2/3/4/5
  • D 2/4/6
A

Ce code utilise une boucle while pour afficher les valeurs de la variable k pour chaque itération de la boucle. Le code initialise k à 0 et, à chaque itération de la boucle, ajoute 2 à la valeur de k jusqu'à ce que k atteigne une valeur supérieure ou égale à 6.

Ainsi, le code affichera les valeurs de k pour chaque itération de la boucle while, comme suit :

  1. Itération 1 : k est égal à 0. Le code affiche 0.

  2. Itération 2 : k est égal à 2 (0 + 2). Le code affiche 2.

  3. Itération 3 : k est égal à 4 (2 + 2). Le code affiche 4.

  4. Itération 4 : k est égal à 6 (4 + 2). La condition k < 6 n'est plus vraie, donc la boucle s'arrête.

Ainsi, la sortie du programme serait :

0
2
4

 

Question 9 sur 20
k = 0
while k < 6 :
k += 2
print(k)

  • A 0/1/2/3/4/5
  • B 0/2/4/6
  • C 0/2/4
  • D 2/4/6
C

Ce code utilise une boucle while pour afficher les valeurs de la variable k pour chaque itération de la boucle. Le code initialise k à 0 et, à chaque itération de la boucle, ajoute 2 à la valeur de k jusqu'à ce que k atteigne une valeur supérieure ou égale à 6.

Ainsi, le code affichera les valeurs de k pour chaque itération de la boucle while, comme suit :

  1. Itération 1 : k est égal à 0. Le code affiche 0.

  2. Itération 2 : k est égal à 2 (0 + 2). Le code affiche 2.

  3. Itération 3 : k est égal à 4 (2 + 2). Le code affiche 4.

  4. Itération 4 : k est égal à 6 (4 + 2). La condition k < 6 n'est plus vraie, donc la boucle s'arrête.

Ainsi, la sortie du programme serait :

0
2
4

 

Question 10 sur 20
for lettre in "hello !":
print(lettre)

  • A hello !
  • B h/e/l/l/o/ /!
  • C hello/ /!
  • D h/e/l/l/o/!
B

Ce code utilise une boucle for pour parcourir chaque caractère dans la chaîne de caractères "hello !". Le code assigne à chaque itération de la boucle la variable lettre avec le caractère correspondant, puis affiche cette variable.

Ainsi, le code affichera chaque caractère dans la chaîne de caractères "hello !", comme suit :

  1. Itération 1 : lettre est égal à "h". Le code affiche "h".

  2. Itération 2 : lettre est égal à "e". Le code affiche "e".

  3. Itération 3 : lettre est égal à "l". Le code affiche "l".

  4. Itération 4 : lettre est égal à "l". Le code affiche "l".

  5. Itération 5 : lettre est égal à "o". Le code affiche "o".

  6. Itération 6 : lettre est égal à " ". Le code affiche " ".

  7. Itération 7 : lettre est égal à "!". Le code affiche "!".

Ainsi, la sortie du programme serait :

h
e
l
l
o
 
!

 

Question 11 sur 20
texte = "Un robot ne peut porter atteinte a un etre humain"
compteur = 0
for lettre in texte :
if lettre == ’e’:
compteur = compteur + 1
print(compteur)

  • A 7
  • B 8
  • C 6
  • D 49
A

Le nombre de fois que la lettre "e" apparaît dans la chaîne de caractères texte est 7

Question 12 sur 20
def mystere(a,b):
    return 4*(a+b)
    
print(mystere (2 ,5))

  • A 28
  • B 10
  • C 13
  • D 4*(a+b)
A

La fonction mystere prend deux arguments a et b, et retourne le résultat de l'expression 4*(a+b).

Dans ce cas précis, on appelle la fonction mystere avec les arguments 2 et 5, ce qui signifie que a prendra la valeur 2 et b prendra la valeur 5. Ensuite, la fonction calcule 4*(a+b), ce qui donne 4*(2+5) qui est égal à 28.

Enfin, la fonction print affiche le résultat retourné par la fonction mystere, c'est-à-dire 28.

Ainsi, la sortie produite sera :

28

 

Question 13 sur 20
texte = "Un robot."
def mystere2(t):
        i = 0
        sortie = ""
        while i < len(t):
            if i%2 == 0:
                sortie += "X"
            else :
                sortie += t[i]
            i += 1
        return sortie
print(mystere2(texte ))

  • A XnXrXbXtX.
  • B Un robot.
  • C UX XoXoX.
  • D SyntaxError
A

La fonction mystere2 prend en entrée une chaîne de caractères t, et retourne une nouvelle chaîne de caractères dans laquelle les caractères d'indices pairs ont été remplacés par la lettre "X".

Dans cet exemple, la variable texte contient la chaîne de caractères "Un robot.", et on appelle la fonction mystere2 avec texte en argument. La fonction parcourt ensuite tous les caractères de texte en utilisant une boucle while. Pour chaque caractère à l'indice i, si i est pair, alors on ajoute la lettre "X" à la chaîne de sortie sortie, sinon on ajoute le caractère t[i]. Enfin, on incrémente la variable i de 1 pour passer au caractère suivant.

Le résultat de l'appel à mystere2(texte) est donc la chaîne de caractères "Xn rXbXt.".

Question 14 sur 20
a = 8
if ... :
print("a est non nul.")

Par quoi remplacer les ... pour que ”a est non nul” s’affiche ?


  • A a // 0
  • B a /= 0
  • C a != 0
  • D a % 0
C

Il manque une condition à cette instruction. Si on veut imprimer "a est non nul" lorsque a est différent de zéro, on peut utiliser la condition a != 0. Le code corrigé serait donc:

a = 8
if a != 0:
    print("a est non nul.")

 

Question 15 sur 20
for k in ... :
 print(k)

Par quoi remplacer les ... pour que 2/4/6/8 s’affiche (/ correspondant `a un retour `a la ligne) ?


  • A range(2,8,2)
  • B range(2,9,2)
  • C range(2,2,8)
  • D range(2,9)
B

Vous pouvez remplacer les ... par range(2, 9, 2) pour afficher 2/4/6/8 sur chaque ligne.

Le code sera comme suit:

for k in range(2, 9, 2):
    print(k)

 

Question 16 sur 20
a = 0
while ... :
a = a + 1
print(a)

Par quoi remplacer les ... pour que le programme se termine ?


A a >= 0

B a < 10

C a != -1

D a = 10

B

Le programme continue d'incrémenter a tant que sa valeur est strictement inférieure à 5. Donc, il suffit de choisir une condition qui permette également de sortir de la boucle à un moment donné. Ici, si on choisit la condition a < 10, elle sera toujours vraie car a ne dépasse jamais 5, donc le programme finira par sortir de la boucle et s'arrêter.

Question 17 sur 20
def ajoute(n,p):
somme = 0
for i in ...: # l i g n e a m o d i f i e r
somme = somme + i
return somm

La fonction ajoute(n,p) cod´ee ci-dessus en Python doit calculer la somme de tous les entiers compris entre n et p (n et p compris). Par exemple, ajoute(2,4) doit renvoyer 9 (car 2+3+4=9). Par quoi remplacer les ... pour que le programme soit correct ?


  • A range(p,n)
  • B range(p,n+1)
  • C range(n,p+1)
  • D range(n,p)
C

Il faut remplacer range(n, p+1) dans la ligne à modifier.

La fonction modifiée sera :

def ajoute(n,p):
    somme = 0
    for i in range(n, p+1):
        somme = somme + i
    return somme

 

Question 18 sur 20
def plus court string (x,y) :
if ... :
return x
else :
return y

Je souhaite d´efinir une fonction qui compare la longueur de deux chaˆınes de caract`eres et me renvoie la plus courte. Par quoi remplacer les ... pour que le programme soit correct ?


  • A y < x
  • B x < y
  • C len(x)>len(y)
  • D len(x)
C
def plus_court_string(x, y):
    if len(x) > len(y):
        return x
    else:
        return y

 

Question 19 sur 20
for k in range(1 ,10 ,3):
   print(k)

  • A 1/4/7
  • B 1/10
  • C 1/4/7/10
  • D 1/2/3/4/5/6/8/9
A

Ce programme va afficher les valeurs 1, 4 et 7.

La fonction range génère une séquence de nombres commençant par le premier argument (1 ici), se terminant avant le deuxième argument (10 ici), et s'incrémentant par pas de la valeur du troisième argument (3 ici). Ainsi, range(1, 10, 3) génère les nombres 1, 4 et 7. La boucle for itère ensuite sur ces nombres et les affiche un par un.

Question 20 sur 20
ch= 'TESTISN'
  r= ' '
  fo r c in ch :
  r=r+c
  print (r)

A TESTISN

B NSITSET

C un message d’erreur 

D aucune des réponses précédentes

A

Ce code va ajouter chaque caractère de la chaîne ch à la variable r et afficher la nouvelle valeur de r à chaque itération de la boucle for. Le résultat affiché serait:

T
TE
TES
TEST
TESTI
TESTIS
TESTISN

 

Ajouter un commentaire

Veuillez vous connecter pour ajouter un commentaire.

Pas encore de commentaires.