22-NSIJ2G11 : Corrigé
Année : 2022
Centre : Etranger
Jour : 2
Enoncé :
Exercice 1
langages et programmation (récursivité)
-
a. La commande
f(5)
affiche :5 4 3 2 1 Partez !
b. On dit de cette fonction qu'elle est récursive car elle s'appelle elle-même.
-
a.
1 2 3 4 5
def ajouter(s, liste): res = [] for m in liste: res.append(s+m) return res
b. La commande
ajouter("b", ["a","b","c"])
renvoie["ba","bb","bc"]
.c. La commande
ajouter("a",[""])
renvoie["a"]
. -
a. La commande
produit("ab",0)
renvoie[""]
(on est dans le cas oùn
vaut 0 donc lereturn
de la ligne 3 est exécuté) Ce n'est pas la liste vide, c'est la liste qui contient un uniquement élément : une chaine vide.b. Dans le cas
n=1
, on parcourt"ab"
et on ajoute chaque caractère l'appel pourn=0
(qui renvoie[""]
), on obtient donc["a","b"]
c. Dans le cas
n=2
, on parcourt"ab"
et on ajoute chaque caractère l'appel pourn=1
(qui renvoie["a","b"]
), on obtient donc["aa","ab","ba","bb"]
.
Exercice 2
structure de données (dictionnaires)
Exercice 3
base de données
Exercice 4
structures de données, programmation objet
Exercice 5
architectures matérielles, systèmes d’exploitation et réseaux (protocoles de routage)