From 2fe01835fffb9282ecc0061b33ddddbe89772f1d Mon Sep 17 00:00:00 2001 From: Alexis Fourmaux Date: Sat, 1 Nov 2025 18:24:10 +0100 Subject: [PATCH] Ajout de sujets de rattrapage --- .../01-bases-python/evaluation/evaluation.md | 102 +---------------- .../evaluation/evaluation_sujet1.md | 101 +++++++++++++++++ .../evaluation/evaluation_sujet2.md | 105 ++++++++++++++++++ .../evaluation/evaluation_sujet2_corrige.md | 48 ++++++++ .../evaluations/numeration_sujet2.md | 25 +++++ .../evaluations/numeration_sujet2_corrige.md | 35 ++++++ 6 files changed, 315 insertions(+), 101 deletions(-) create mode 100644 src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet1.md create mode 100644 src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2.md create mode 100644 src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2_corrige.md create mode 100644 src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2.md create mode 100644 src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2_corrige.md diff --git a/src/cours/CIEL1/01-bases-python/evaluation/evaluation.md b/src/cours/CIEL1/01-bases-python/evaluation/evaluation.md index bee19ad..b394c76 100644 --- a/src/cours/CIEL1/01-bases-python/evaluation/evaluation.md +++ b/src/cours/CIEL1/01-bases-python/evaluation/evaluation.md @@ -1,101 +1 @@ -# Evaluation - Bases de Python - -#### QCM (5pts) - -1. (1pt) Qu'affiche le code suivant ? - ```python - mon_age = 16 - if mon_age >= 18: - print("Je suis majeur") - else: - print("Je suis mineur") - ``` - - [ ] Rien - - [ ] Je suis mineur - - [ ] Je suis majeur - - [ ] 16 - -2. (1pt) Si j'écris `ma_variable = []`, `ma_variable` est : - - [ ] Un dictionnaire vide - - [ ] Un tuple vide - - [ ] Une liste vide - - [ ] Une fonction - -3. (1pt) Si j'écris la fonction suivante, quel nom serait le plus pertinent (à la place de `ma_fonction`) ? - ```python - def ma_fonction(valeur): - for i in range(11): - print(f"{i} x {valeur} = {i*valeur}") - ``` - - [ ] `mult` - - [ ] `afficher_table_de_multiplication` - - [ ] `aff_tbl_mult` - - [ ] `table` - - [ ] `multiplication` - -4. (1pt) Quelle est la valeur de `prix_ttc` à la fin du programme suivant ? - ```python - tva = 20 / 100 - prix_ht = 100 - prix_ttc = prix_ht * (1 + tva) - ``` - - [ ] 100 - - [ ] 2100 - - [ ] 120 - - [ ] 47 - -5. (1pt) Que retourne le code suivant ? - ```python - ma_liste = [] - for lettre in 'abcdefghijklmnopqrstuvwxyz': - ma_liste.append(lettre) - return ma_liste - ``` - - [ ] Une liste contenant uniquement la lettre a - - [ ] Une liste contenant toutes les lettres de l'alphabet - - [ ] Une liste vide - - [ ] Une chaîne de caractères contenant toutes les lettres de l'alphabet - - [ ] Une chaîne de caractères contenant uniquement la lettre a - -6. (1pt) Quel opérateur utiliser pour dire "différent de" - - `not` - - `==` - - `<>` - - `!=` - -#### Questions (8pts) - -1. (2 pts) Quel est le type des valeurs suivantes ? (types possibles : int, float, bool, str) - - 2 - - 2.4 - - "Bonjour !" - - True - - "17" - -2. (1pt) Donner les deux types de boucles possibles en Python. - -3. (1pt) Quel type de boucle préfère-t-on si on a un nombre d'itérations connu d'avance ? - -4. (3pts) Lire le code ci-dessous et répondre aux questions : - 1. Qu'est-ce que `calculer_age` ? - 2. Où se trouvent les paramètres ? la valeur de retour ? - 3. Que vaut `mon_age` ? - ```python - def calculer_age(annee_de_naissance): - annee_en_cours = 2025 - age = annee_en_cours - annee_de_naissance - return age - - mon_age = calculer_age(2000) - ``` - -5. (1pt) Lorsqu'on ouvre un fichier dans un programme, que ne faut-il jamais oublier de faire une fois que l'on a terminé de l'utiliser ? - -#### Exercices (7pts) - -1. (3pts) Écrire un programme qui demande le prénom de l'utilisateur et le salue : si l'utilisateur s'appelle Jean, le programme devra afficher `Bonjour, Jean !` - -2. (4pts) Écrire une **fonction** `maximum` qui retourne le plus grand nombre d'une liste de nombres. - - Par exemple, `maximum([3, 7, 12, 1 , 6])` devra retourner la valeur `12` - - Attention, "retourner" ne signifie pas "afficher" - - Toute trace de recherche sera valorisée \ No newline at end of file +# Evaluation diff --git a/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet1.md b/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet1.md new file mode 100644 index 0000000..bee19ad --- /dev/null +++ b/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet1.md @@ -0,0 +1,101 @@ +# Evaluation - Bases de Python + +#### QCM (5pts) + +1. (1pt) Qu'affiche le code suivant ? + ```python + mon_age = 16 + if mon_age >= 18: + print("Je suis majeur") + else: + print("Je suis mineur") + ``` + - [ ] Rien + - [ ] Je suis mineur + - [ ] Je suis majeur + - [ ] 16 + +2. (1pt) Si j'écris `ma_variable = []`, `ma_variable` est : + - [ ] Un dictionnaire vide + - [ ] Un tuple vide + - [ ] Une liste vide + - [ ] Une fonction + +3. (1pt) Si j'écris la fonction suivante, quel nom serait le plus pertinent (à la place de `ma_fonction`) ? + ```python + def ma_fonction(valeur): + for i in range(11): + print(f"{i} x {valeur} = {i*valeur}") + ``` + - [ ] `mult` + - [ ] `afficher_table_de_multiplication` + - [ ] `aff_tbl_mult` + - [ ] `table` + - [ ] `multiplication` + +4. (1pt) Quelle est la valeur de `prix_ttc` à la fin du programme suivant ? + ```python + tva = 20 / 100 + prix_ht = 100 + prix_ttc = prix_ht * (1 + tva) + ``` + - [ ] 100 + - [ ] 2100 + - [ ] 120 + - [ ] 47 + +5. (1pt) Que retourne le code suivant ? + ```python + ma_liste = [] + for lettre in 'abcdefghijklmnopqrstuvwxyz': + ma_liste.append(lettre) + return ma_liste + ``` + - [ ] Une liste contenant uniquement la lettre a + - [ ] Une liste contenant toutes les lettres de l'alphabet + - [ ] Une liste vide + - [ ] Une chaîne de caractères contenant toutes les lettres de l'alphabet + - [ ] Une chaîne de caractères contenant uniquement la lettre a + +6. (1pt) Quel opérateur utiliser pour dire "différent de" + - `not` + - `==` + - `<>` + - `!=` + +#### Questions (8pts) + +1. (2 pts) Quel est le type des valeurs suivantes ? (types possibles : int, float, bool, str) + - 2 + - 2.4 + - "Bonjour !" + - True + - "17" + +2. (1pt) Donner les deux types de boucles possibles en Python. + +3. (1pt) Quel type de boucle préfère-t-on si on a un nombre d'itérations connu d'avance ? + +4. (3pts) Lire le code ci-dessous et répondre aux questions : + 1. Qu'est-ce que `calculer_age` ? + 2. Où se trouvent les paramètres ? la valeur de retour ? + 3. Que vaut `mon_age` ? + ```python + def calculer_age(annee_de_naissance): + annee_en_cours = 2025 + age = annee_en_cours - annee_de_naissance + return age + + mon_age = calculer_age(2000) + ``` + +5. (1pt) Lorsqu'on ouvre un fichier dans un programme, que ne faut-il jamais oublier de faire une fois que l'on a terminé de l'utiliser ? + +#### Exercices (7pts) + +1. (3pts) Écrire un programme qui demande le prénom de l'utilisateur et le salue : si l'utilisateur s'appelle Jean, le programme devra afficher `Bonjour, Jean !` + +2. (4pts) Écrire une **fonction** `maximum` qui retourne le plus grand nombre d'une liste de nombres. + - Par exemple, `maximum([3, 7, 12, 1 , 6])` devra retourner la valeur `12` + - Attention, "retourner" ne signifie pas "afficher" + - Toute trace de recherche sera valorisée \ No newline at end of file diff --git a/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2.md b/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2.md new file mode 100644 index 0000000..e22b199 --- /dev/null +++ b/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2.md @@ -0,0 +1,105 @@ +--- +puppeteer: + format: A4 +--- + +# Evaluation - Bases de Python + +## QCM (5 pts) + +1. (1pt) Que va afficher le code suivant ? +```python +note = 19 +if note > 10: + print("Admis") +else: + print("Ajourné") +``` + +- [ ] Rien +- [ ] Admis +- [ ] Ajourné +- [ ] 19 + +2. (1pt) Si j'écris `data = {}`, `data` est : + +- [ ] Un ensemble vide +- [ ] Un dictionnaire vide +- [ ] Une liste vide +- [ ] Une chaîne vide + +3. (1pt) Quel nom serait le plus pertinent pour la fonction ci-dessous ? +```python +def ma_fonction(n): + for i in range(1, 11): + print(f"{n} x {i} = {n*i}") +``` + +- [ ] `calcul` +- [ ] `multiplication` +- [ ] `afficher_table_de_multiplication` +- [ ] `tableau` +- [ ] `aff_tbl_mult` + +4. (1pt) Quelle est la valeur finale de `total` dans ce code ? +```python +total = 4 +for i in range(3): + total += 2 +``` + +- [ ] 4 +- [ ] 6 +- [ ] 10 +- [ ] 8 + +5. (1pt) Comment afficher le dernier élément d'une liste `ma_liste` ? + +- [ ] `print(ma_liste[-1])` +- [ ] `print(ma_liste[^1])` +- [ ] `print(ma_liste[^0])` +- [ ] `print(ma_liste[len(ma_liste)])` + +6. (1pt) Pour tester l'égalité de deux valeurs en Python, on utilise : + +- [ ] `==` +- [ ] `!=` +- [ ] `=` +- [ ] `===` + + +## Questions (8 pts) + +1. (2 pts) Donnez le type Python des valeurs suivantes (`int`, `float`, `bool`, `str`) : + - `False` + - `7.5` + - `"Python"` + - `5` + - `"3"` +2. (1pt) Quels sont les deux types de boucles possibles en Python ? +3. (1 pt) Quelle boucle est utilisée de préférence pour parcourir les éléments d'une liste ? +4. (3 pts) Analysez et expliquez le résultat du code : + 1. À quoi sert la fonction `somme_pairs` ? + 1. Que vaut `resultat` après exécution ? + 1. Où sont les paramètres de la fonction ? Où est la valeur de retour ? (entourez et annotez dans le code) +```python +def somme_pairs(liste): + somme = 0 + for element in liste: + if element % 2 == 0: + somme += element + return somme + +resultat = somme_pairs([1, 2, 3, 4]) +``` + +1. (1 pt) Quelle *méthode* faut-il utiliser pour ajouter un élément en fin de liste Python ? + +## Exercices (7 pts) + +1. (3 pts) Écrire un **programme** qui demande l’âge d’un utilisateur et affiche s’il est "majeur" ou "mineur" (majeur à partir de 18 ans). +2. (4 pts) Écrire une **fonction** `moyenne` qui retourne la moyenne des valeurs d’une liste fournie en paramètre. + - Par **exemple**, `moyenne([10, 20, 30])` doit retourner `20`. + - La fonction ne doit rien afficher, seulement **retourner** le résultat. + + diff --git a/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2_corrige.md b/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2_corrige.md new file mode 100644 index 0000000..b921448 --- /dev/null +++ b/src/cours/CIEL1/01-bases-python/evaluation/evaluation_sujet2_corrige.md @@ -0,0 +1,48 @@ +# Corrigé + +## QCM + +1. **Admis** (car 19 > 10) +2. **Un dictionnaire vide** (`{}` initialise un dict) +3. **afficher_table_de_multiplication** (fonction adaptée à la signature) +4. **10** (total = 4 + 2 + 2 + 2 = 10) +5. **print(l[-1])** (accesseur du dernier élément d’une liste) +6. **==** (test d'égalité) + +## Questions de cours + +1. Types : + - `False` : **bool** + - `7.5` : **float** + - `"Python"` : **str** + - `5` : **int** + - `"3"` : **str** +2. Les trois structures de contrôle : + - Conditionnelles (`if`, `elif`, `else`) + - Boucles (`for`, `while`) + - Bloc d'exception (`try`, `except`) +3. **Boucle for** (adaptée pour parcourir les éléments d’une liste) +4. Analyse du code : +a) La fonction `somme_pairs` renvoie la somme des éléments pairs d’une liste passée en paramètre +b) Après exécution avec `[^1][^2][^3][^4]`, `resultat = 6` (car 2 + 4) +c) Les paramètres sont dans la définition de la fonction (`liste`), la valeur de retour est donnée par le mot-clé `return`. +5. **append** (la méthode `append()` permet d’ajouter en fin de liste) + +## Exercices + +1. Programme : +```python +age = int(input("Quel est votre âge ? ")) +if age >= 18: + print("majeur") +else: + print("mineur") +``` + +2. Fonction moyenne : +```python +def moyenne(liste): + if len(liste) == 0: + return 0 + return sum(liste) / len(liste) +``` \ No newline at end of file diff --git a/src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2.md b/src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2.md new file mode 100644 index 0000000..4090fad --- /dev/null +++ b/src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2.md @@ -0,0 +1,25 @@ +# Evaluation - Représentation des nombres et opérations logiques + +1. Convertissez les nombres suivants en décimal : + - $ 1110~1101_{|2} $ + - $ 3E_{|16} $ +2. Convertissez les nombres suivants en binaire : + - $ 45_{|10} $ + - $ 9F_{|16} $ +3. Convertissez les nombres suivants en hexadécimal : + - $ 101011_{|2} $ + - $ 297_{|10} $ +4. Sur le nombre $ 10110110_2 $, indiquez : + - Le bit de poids faible (LSB) + - Le bit de poids fort (MSB) +5. **Combien d'entiers** peut-on représenter avec un nombre de 7 bits ? +6. Mon ordinateur m'indique qu'un fichier fait 24 567 890 octets. Combien cela représente-t-il environ (2 chiffres après la virgule, attention aux unités) : + - en Mo (Mégaoctets) ? + - en Mio (Mébioctets) ? +7. Mon disque dur a une capacité de 512 Go (Gigaoctets). Combien cela représente-t-il en Gio (Gibioctets) ? +8. Donnez la table de vérité de l'opération logique OU. +9. Donnez le résultat des opérations booléennes suivantes si `a = True` et `b = False` : + - `a and b` + - `a or not b` +10. Donnez le résultat de l'opération bit à bit suivante (les nombres sont en base 10) : + - `85 | 60` \ No newline at end of file diff --git a/src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2_corrige.md b/src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2_corrige.md new file mode 100644 index 0000000..c39ee1a --- /dev/null +++ b/src/cours/CIEL1/02-reseau/evaluations/numeration_sujet2_corrige.md @@ -0,0 +1,35 @@ +# Corrigé - Représentation des nombres et Opérations logiques + +1. Conversion en décimal : + - $1101_2 = 1 \times 2^3 + 1 \times 2^2 + 0 \times 2^1 + 1 \times 2^0 = 8 + 4 + 0 + 1 = 13$ + - $3E_{16} = 3 \times 16^1 + 14 \times 16^0 = 48 + 14 = 62$ +2. Conversion en binaire : + - $45_{10} = 101101_2$ (division successive par 2) + - $9F_{16} = 10011111_2$ (9 = 1001, F = 1111) +3. Conversion en hexadécimal : + - $101011_2 = 2B_{16}$ (regroupement en paquets de 4 bits: 0010 1011) + - $255_{10} = FF_{16}$ +4. Nombre $10110110_2$ : + - LSB (bit de poids faible) = dernier bit à droite = 0 + - MSB (bit de poids fort) = premier bit à gauche = 1 +5. Avec 7 bits, on peut représenter $2^7 = 128$ entiers. +6. Conversion des octets en Mo et Mio : + - $24,567,890$ octets en Mo = $\frac{24,567,890}{10^6} = 24.57$ Mo + - $24,567,890$ octets en Mio = $\frac{24,567,890}{2^{20}} \approx 23.43$ Mio +7. Capacité de 512 Go en Gio : + - $512 \text{ Go} = \frac{512 \times 10^9}{2^{30}} \approx 476.84$ Gio +8. Table de vérité du ET logique : +| A | B | A ET B | +| :-- | :-- | :-- | +| False | False | False | +| False | True | False | +| True | False | False | +| True | True | True | + +9. Résultats des opérations booléennes : + - \$ \neg (A \land B) = \neg (True \land False) = \neg (False) = True \$ + - \$ A \lor \neg B = True \lor \neg (False) = True \lor True = True \$ +10. Opération bit à bit $85 \mid 60$ : + - $85_{10} = 01010101_2$ + - $60_{10} = 00111100_2$ + - $01010101 \mid 00111100 = 01111101_2 = 125_{10}$ \ No newline at end of file