0% ont trouvé ce document utile (0 vote)
99 vues28 pages

Testez vos connaissances en programmation

Transféré par

Elfilali Mohamed
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
99 vues28 pages

Testez vos connaissances en programmation

Transféré par

Elfilali Mohamed
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Un lien pour tester vos connaissances

Et valider vos résultats

https://algoprog.fr/06-qcm/qcm.php?contenu=2&titre=QCM%202%20:%20les%20fonctions

Question 1

a = 5

a = a + 3

Que contient la variable a ?

erreur
3
5
8

Question 2

a = 3

a = a + 2

a = 3 * a

Que contient la variable a ?

Je ne sais pas
15
a
3
Question 3

a = 3

b = 4

a = b

Que contient la variable a ?

rouge
3
4
b

Question 4

a = 3

b = 7

a = 2 * a + 6

print(a)

a = 2 * b + 1

print(a)

Qu'affiche l'exécution de ce programme ?

3 3
12 15
3 15
12 12

Question 5

Euclide = 1 + 1 / 2

print(Euclide)
Qu'affiche l'exécution de ce programme ?

1.5
3/2
1,5
1

Question 6

euclide = 1 + 1 / 2

print("euclide")

Qu'affiche l'exécution de ce programme ?

1.5
3/2
1,5
euclide

Question 7

evariste = 13.4

Evariste = 15.5

Evariste = Evariste - 5.5

print(evariste)

Qu'affiche l'exécution de ce programme ?

10.5
10
13.4
7.9

Question 8

a = 9

b = 2
difference_carre = (a - b) * (a + b)

Que contient la variable difference_carre ?

(a - b) * (a + b)
77
81
78

Question 9

x = 3

y = 4

z = 5

operation = (x + y) * z

print(operation)

Qu'affiche l'exécution de ce programme ?

60
23
27
35

Question 10

a = 5

a = a - 5 * a

Que contient la variable a ?

-20
-15
0
-10
La boucle while 1
Répondre à toutes les questions pour obtenir votre score.

Question 1

jour = 1

while jour <= 7 :

print(jour)

jour = jour + 1

Qu'affiche ce programme lors de son exécution ?

234567
12345678
1234567
2345678

Question 2

jour = 1

while jour <= 7 :

jour = jour + 1

print(jour)

Qu'affiche ce programme lors de son exécution ?

234567
12345678
1234567
2345678

Question 3
jour = 1

while jour <= 7 :

jour = jour + 1

print(jour)

Qu'affiche ce programme lors de son exécution ?

234567
2345678
7
8

Question 4

plus = 1

while plus < 10 :

plus = plus + 2

print(plus)

Qu'affiche ce programme lors de son exécution ?

11
9
13
10

Question 5

rebours = 15

while rebours > 0 :

rebours = rebours - 2

print(rebours)

Qu'affiche ce programme lors de son exécution ?


1
-1
0
2

Question 6

nombre = 1

while nombre > 0 :

print(nombre)

nombre = nombre + 1

Qu'affiche ce programme lors de son exécution ?

Erreur
Rien
123456789
123456789 ...

Question 7

def affichage_jour(debut, fin) :

jour = debut

while jour <= fin :

print(jour)

jour = jour + 1

Que renvoie l'appel : >>> affichage_jour(1, 7) ?

234567
2345678
1234567
12345678

Question 8
def affichage_jour(debut, fin) :

jour = debut

while jour <= fin :

print(jour)

jour = jour + 1

Que renvoie l'appel : >>> affichage_jour(-3, 4) ?

Erreur : les jours négatifs n'existent pas.


01234
-3-2-10
-3-2-101234
Question 1

def f(x) :

return 2 * x - 3

Que renvoie : >>> f (12) ?

f (12)
18
17
21
Bonne réponse !

Question 2

def augmente(nombre) :

return nombre + 100

Que renvoie : >>> augmente (17) ?

18
17
117
1017

Question 3

def augmente(nombre) :

return nombre + 100

Que renvoie : >>> augmente (-17) ?

117
82
83
84

Question 4
def prix(adultes, enfants) :

total = 10 * adultes + 5 * enfants

return total

Que renvoie : >>> prix(4, 6) ?

80
70
erreur
75

Question 5

def f(x) :

x = x + 3

x = 4 * x

return x

Que renvoie : >>> f (-7) ?

- 16
- 40
40
- 20

Question 6

def f(x, y) :

resultat = 3 * (x - y) + 2

return resultat

Que renvoie : >>> f (9, 2) ?

- 19
36
21
23

Question 7

def f(x, y) :

resultat = 3 * (x - y) + 2

return resultat

Que renvoie : >>> f (9, -2) ?

23
35
33
24

Question 8

def bonjour(prenom) :

reponse = "Bonjour " + prenom + " !"

return reponse

Que renvoie : >>> bonjour ("Ada Lovelace") ?

Bonjour Ada !
Bonjour prenom !
Bonjour Ada Lovelace !
reponse

Question 9

>>> from math import sqrt

>>> variable_1 = sqrt(81)

>>> variable_2 = sqrt(variable_1)

Que contient variable_2 ?


3
9
81
0

Question 10

from math import sqrt

def racine(x) :

return sqrt(x)

Que renvoie l'instruction : >>> racine (144) ?

72
13
11
12

Question 11

from math import sqrt

def racine(x) :

return sqrt(x)

Quelle(s) fonction(s) mathématique(s) associer à cette fonction informatique ?

Les fonctions linéaires


Les fonctions affines
La fonction carré
La fonction racine carrée
Question 1

def plus_dix(depart) :

x = depart

while x < 100 :

x = x + 10

return x

Que renvoie l'appel : >>> plus_dix(3) ?

3
13
103
93

Question 2

def plus_dix(depart) :

x = depart

while x < 100 :

x = x + 10

return x

Que renvoie l'appel : >>> plus_dix(125) ?

125
225
Erreur
Rien

Question 3

def moins_cent(depart) :
x = depart

while x > 0 :

x = x - 100

return x

Que renvoie l'appel : >>> moins_cent(1027) ?

27
-73
-27
127

Question 4

def moins_cent(depart) :

x = depart

while x > 0 :

x = x - 100

return x

Que renvoie l'appel : >>> moins_cent(-36) ?

Erreur
-136
64
-36

Question 5

def plus_dix(x) :

while x > 0 :

x = x + 10

return x

Que renvoie l'appel : >>> plus_dix(3) ?


3
93
103
Rien

Question 6

def plus_dix(x) :

while x > 0 :

x = x + 10

return x

Que renvoie l'appel : >>> plus_dix(-3) ?

-3
3
13
Rien

Question 7

def f(x) :

return 2 * x - 3

def seuil() :

x = 0

while f(x) < 100 :

x = x + 1

return x

On appelle f

la fonction définie sur R par : f(x)=2x−3


.
Que renvoie l'appel : >>> seuil() ?

Le plus grand entier naturel tel que : f(x)⩾100.


Le plus petit entier naturel tel que : f(x)⩾100.
Le plus grand entier naturel tel que : f(x)<100.
Le plus petit entier naturel tel que : f(x)<100.

Question 8

def f(x) :

return 2 * x - 3

def seuil(k) :

x = 0

while f(x) < k :

x = x + 1

return x

On appelle f

la fonction définie sur R par : f(x)=2x−3

.
Que renvoie l'appel : >>> seuil(500) ?

Le plus grand entier naturel tel que : f(x)<500.


Le plus petit entier naturel tel que : f(x)<500.
Le plus grand entier naturel tel que : f(x)⩾500.
Le plus petit entier naturel tel que : f(x)⩾500.

Question 1

puissance = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]


Que contient : puissance[0] ?

1
2
4
8

Question 2

puissance = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]

Que contient : puissance[3] ?

1
2
4
8

Question 3

puissance = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]

Que contient : puissance[-1] ?

512
1024
rien
-1

Question 4

puissance = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024]

Que contient : puissance[-2] ?

512
1024
rien
-1
Question 5

note = [19, 8, 5, 15, 11]

Que contient : max(note) ?

20
11
19
rien

Question 6

note = [19, 8, 5, 15, 11]

Que contient : min(note) ?

0
rien
5
19

Question 7

note = [19, 8, 5, 15, 11]

note.sort()

Que contient la liste : note ?

[]
[19, 8, 5, 15, 11]
[19, 15, 11, 8, 5]
[5, 8, 11, 15, 19]

Listes par ajouts successifs


Répondre à toutes les questions pour obtenir votre score.
Question 1

chiffre = [0, 1, 2, 3, 4, 5]

chiffre.append(8)

Que contient la liste : chiffre ?

[0, 1, 2, 3, 4, 5]
[8, 0, 1, 2, 3, 4, 5]
[8]
[0, 1, 2, 3, 4, 5, 8]

Question 2

chiffre = [0, 1, 2, 3, 4, 5]

Que vaut : len(chiffre) ?

5
6
7
8

Question 3

chiffre = [0, 1, 2, 3, 4, 5]

chiffre.append(8)

Que vaut maintenant : len(chiffre) ?

5
6
7
8

Question 4
pair = [0, 2, 4, 6, 8]

pair.pop(2)

Que contient la liste : pair ?

[0, 4, 6, 8]
[0, 2, 4, 6, 8, 2]
[0, 2, 6, 8]
[2, 0, 2, 4, 6, 8]

Question 5

impair = [1, 3, 5, 7, 9, 3]

impair.remove(3)

Que contient la liste : impair ?

[1, 3, 5, 9, 3]
[1, 5, 7, 9, 3]
[1, 5, 7, 9]
[1, 3, 5, 7, 9, 3]

Question 6

liste = []

for compteur in range(1, 6) :

liste.append(compteur)

Que contient la liste : liste ?

[1, 2, 3, 4, 5, 6]
[0, 1, 2, 3, 4, 5]
[0, 1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5]

Question 7

multiple = []
for compteur in range(0, 5) :

multiple.append(3 * compteur)

Que contient la liste : multiple ?

[0, 3, 6, 9, 12, 15]


[3, 6, 9, 12, 15]
[0, 3, 6, 9, 12]
[0, 3, 6, 9, 12, 15, 18]

Question 8

liste = [1]

for compteur in range(1, 6) :

liste.append(3 * liste[-1] + 1)

Soit (un)n∈N

la suite définie par :


u0=1 et un+1=3un+1

La liste liste contient :

[u2,u3,u4,u5,u6,u7]
[u1,u2,u3,u4,u5,u6]
[u0,u1,u2,u3,u4,u5]
[u0,u1,u2,u3,u4,u5,u6]

Question 9

liste = [0]

for compteur in range(1, 11) :

liste.append(liste[-1]**2 + 3)

On a ainsi construit la liste des :

10 premiers termes, de la suite (un)n∈N


définie par : u0=0 et un+1=u2n+3
10 premiers termes, de la suite (un)n∈N définie par : u0=0 et un+1=2un+3
11 premiers termes, de la suite (un)n∈N définie par : u0=0 et un+1=u2n+3
11 premiers termes, de la suite (un)n∈N définie par : u0=0 et un+1=2un+3
Question 1

entiers = [i for i in range(0, 5)]

Que contient la liste : entiers ?

[1, 2, 3, 4, 5]
[0, 1, 2, 3, 4, 5]
[1, 2, 3, 4]
[0, 1, 2, 3, 4]

Question 2

entiers = [i for i in range(0, 100)]

Que contient la liste : entiers ?

Les entiers de 0 à 100


0 et 100
Les entiers de 1 à 99
Les entiers de 0 à 99

Question 3

plus_dix = [i + 10 for i in range(0, 6)]

Que contient la liste : plus_dix ?

[10, 11, 12, 13, 14, 15, 16]


[0, 10, 20, 30, 40, 50]
[10, 11, 12, 13, 14, 15]
[0, 10, 20, 30, 40, 50, 60]

Question 4

triples = [3*i for i in range(0, 6)]

Que contient la liste : triples ?


[0, 3, 6, 9, 12, 15, 18]
[0, 3, 6, 9, 12, 15]
[1, 4, 7, 10, 13, 16]
[3, 6, 9, 12, 15]

Question 5

Comment créer la liste des multiples de 7, de 14 à 49 ?

[7*i for i in range(1, 7)]


[7*i for i in range(0, 7)]
[7*i for i in range(2, 8)]
[7*i for i in range(1, 8)]

Question 6

(un)n∈N

est la suite définie pour tout entier naturel n par :


un=3n+1

Comment contruire la liste de ses 5 premiers termes ?

[3i + 1 for i in range(0, 6)]


[3*i + 1 for i in range(0, 6)]
[3i + 1 for i in range(0, 5)]
[3*i + 1 for i in range(0, 5)]

Question 7

(un)n∈N

est la suite définie pour tout entier naturel n par :


un=n2+5

Comment contruire la liste de ses 10 premiers termes ?

[i^2 + 5 for i in range(0, 10)]


[i^2 + 5 for i in range(0, 11)]
[i**2 + 5 for i in range(0, 10)]
[i**2 + 5 for i in range(0, 11)]
Exercice 1 : Ecrire un Code en Python

 Ecrire une fonction Python qui Déterminer si un nombre est un nombre Parfait ou pas. Principe : Un nombre égal à
la somme de ses diviseurs propres est parfait. Exemple : 6 Est Parfait car en effet 1, 2 et 3 sont les diviseurs propres
de 6 et la somme de 1+2+3 = 6. 2pts
 Ecrire une fonction Paire_Impaire en Python qui détermine si un nombre est paire ou impaire. 2pts

Exercice 1 : Solution

# Fonction pour déterminer si un nombre est parfait


def est_parfait(n):
diviseurs = [i for i in range(1, n) if n % i == 0] # Liste des diviseurs de n
return sum(diviseurs) == n # Renvoie True si la somme des diviseurs est égale à n, False sinon

# Fonction pour déterminer si un nombre est pair ou impair


def paire_impaire(n):
if n % 2 == 0:
return "pair"
else:
return "impair"

La première fonction est parfait prend un nombre entier n en argument et renvoie True si ce nombre est parfait, c'est-à-dire si
la somme de ses diviseurs propres est égale à n, et False sinon. Pour ce faire, on utilise une liste en compréhension pour
générer la liste des diviseurs de n, en excluant n lui-même. Ensuite, on calcule la somme des diviseurs à l'aide de la fonction
sum de Python, et on compare cette somme à n pour déterminer si le nombre est parfait ou non.

La deuxième fonction paire_impaire prend un nombre entier n en argument et renvoie la chaîne de caractères "pair" si n est
pair, et "impair" sinon. On utilise ici l'opérateur modulo % qui permet de calculer le reste de la division euclidienne de n par
2. Si ce reste est égal à 0, alors n est pair, sinon il est impair. On retourne ensuite la chaîne de caractères correspondante.

Problème : Les Listes en Python 1

Une liste (souvent appelée tableau dans d’autres langages de programmation) est une séquence modifiable de données
ordonnées. Cela signifie que chaque élément de la liste est associé à une position (un index). Le premier élément d’une liste
possède l’index 0 et le dernier élément possède l’index n - 1 pour une liste contenant n éléments. Henzo étudiant du
GROUPE GENIUS souhaite apprendre plus sur les listes et se livre répondre aux questions suivantes avec des propositions
correctes aider Henzo dans la correction de cet exercice : (8 * 2pts)

1. Ecrire un programme Python qui définit une liste (nommée myList) contenant les valeurs {23,67,90,92,-
1,3,4,89,400,7,-1,0,-2,23,50,3}, et qui effectue ensuite une boucle afin d’afficher les valeurs de cette liste.
2. Ecrire une fonction nommée (dansListe) qui prend en argument une liste et une valeur et qui retourne 1 si la valeur
est présente dans la liste, 0 sinon.
3. Ecrire une fonction nommée (supEgaListe) qui prend en argument une liste et une valeur et qui retourne tous les
éléments de la liste supérieures ou égaux a cette valeur.
4. Ecrire une fonction nommée (maxListe) qui prend en argument une liste et qui retourne la valeur maximale de la
liste.
5. Ecrire une fonction nommée (indMaxListe) qui prend en argument une liste et qui retourne un indice de la liste
contenant la valeur maximale de la liste.
6. Ecrire une fonction nommée (inverseListe) qui prend en argument une liste et qui retourne une nouvelle liste
contenant les mêmes éléments mais dans l’ordre inverse.
7. Ecrire une fonction nommée (moyListe) qui prend en argument une liste et qui retourne la valeur moyenne de la
liste.
8. Soit la liste myList =[23,67,90,92,-1,3,4,89,400,7,-1,0,-2,23,50,3] donner le résultat pour :
 print(myList[ : ])
 print(myList[ -6: ])
 print(myList[4:9])
 print(myList[4:4])
 print(myList[4:-12 ])
 print(myList[1:14:3])

1) Programme pour définir une liste et afficher ses valeurs :

myList = [23, 67, 90, 92, -1, 3, 4, 89, 400, 7, -1, 0, -2, 23, 50, 3]
for valeur in myList:
print(valeur)

2) Fonction pour vérifier si une valeur est présente dans une liste :

def dansListe(liste, valeur):


if valeur in liste:
return 1
else:
return 0

3) Fonction pour retourner tous les éléments d'une liste supérieurs ou égaux à une valeur donnée :

def supEgaListe(liste, valeur):


supEgaList = []
for element in liste:
if element >= valeur:
supEgaList.append(element)
return supEgaList

4) Fonction pour retourner la valeur maximale d'une liste :

def maxListe(liste):
maxVal = liste[0]
for element in liste:
if element > maxVal:
maxVal = element
return maxVal

5) Fonction pour retourner l'indice de la valeur maximale d'une liste :

def indMaxListe(liste):
maxVal = liste[0]
indMax = 0
for i in range(len(liste)):
if liste[i] > maxVal:
maxVal = liste[i]
indMax = i
return indMax

6) Fonction pour retourner une nouvelle liste contenant les mêmes éléments mais dans l'ordre inverse :

def inverseListe(liste):
inverse = []
for i in range(len(liste) - 1, -1, -1):
inverse.append(liste[i])
return inverse

7) Fonction pour retourner la valeur moyenne d'une liste :


def moyListe(liste):
somme = 0
for element in liste:
somme += element
moy = somme / len(liste)
return moy

8) Résultats des instructions donnés sur la liste myList :

# Afficher toute la liste


print(myList[:]) # [23, 67, 90, 92, -1, 3, 4, 89, 400, 7, -1, 0, -2, 23, 50, 3]

# Afficher les 6 derniers éléments de la liste


print(myList[-6:]) # [0, -2, 23, 50, 3]

# Afficher les éléments de la liste allant de l'indice 4 à l'indice 9 (non inclus)


print(myList[4:9]) # [-1, 3, 4, 89, 400]

# Afficher une liste vide car les indices de début et de fin sont les mêmes
print(myList[4:4]) # []

# Afficher une liste vide car l'indice de fin est inférieur à l'indice de début
print(myList[4:-12]) # []

# Afficher tous les éléments de la liste en sautant 3 indices à chaque fois, en partant de l'indice 1

Le slicing avec l'expression myList[1:14:3] permet de récupérer une partie de la liste myList en utilisant une étape (step) de
3. Voici le détail :

1: c'est l'indice de départ pour le slicing, donc on commence à récupérer les éléments à partir de 67 (qui se trouve à l'indice
1).

14: c'est l'indice de fin pour le slicing, donc on arrête de récupérer les éléments juste avant l'indice 14 (qui correspond à la
valeur 23).

3: c'est la taille de l'étape pour le slicing, donc on récupère les éléments tous les 3 indices.

Ainsi, myList[1:14:3] renvoie [67, -1, 89, -2].

Vous aimerez peut-être aussi