Aller au contenu

Index des sujets 2022

Corrigé sujet 15 - Année : 2022

Sujet 15 - 2022

Exercice 1

1
2
3
4
5
6
def nb_repetitions(elt,tab):
    nb_rep = 0
    for x in tab:
        if x==elt:
            nb_rep += 1
    return nb_rep

Commentaire

C'est un exercice classique de parcours d'un itérable en comptant les occurrences d'apparition d'une valeur. Un parcours par élément suffit, les indices des occurrences n'étant pas utilisées.

Exercice 2

1
2
3
4
5
6
7
def binaire(a):
    bin_a = str(a%2) #(1)
    a = a // 2
    while a != 0 :
        bin_a = str(a%2) + bin_a #(2)
        a = a//2 #(3)
    return bin_a
  1. On rappelle que a%2 est le reste dans la division euclidienne de a par 2 et donc le premier chiffre (à droite) de son écriture binaire.
  2. Ajout du nouveau chiffre (en le convertissant en chaîne de caractères)
  3. On rappelle que a//2 est le quotient dans la division euclidienne de a par 2.

Attention

L'illustration de l'algorithme proposé dans l'énoncé laisse penser que la condition d'arrêt de l'algorithme est a==1.