From 4c53916b12b1e1bd1113233cc1894a38d04ce6a4 Mon Sep 17 00:00:00 2001 From: gwen Date: Fri, 9 Jun 2017 09:59:42 +0200 Subject: [PATCH] exercices de travaux pratiques --- algorithmique/cours/conf.py | 4 +- algorithmique/cours/index.txt | 1 + algorithmique/cours/tp.txt | 101 ++++++++++++++++++++++++++++++++++ algorithmique/tp.txt | 67 ---------------------- 4 files changed, 104 insertions(+), 69 deletions(-) create mode 100644 algorithmique/cours/tp.txt delete mode 100644 algorithmique/tp.txt diff --git a/algorithmique/cours/conf.py b/algorithmique/cours/conf.py index b115013..0fc0a95 100644 --- a/algorithmique/cours/conf.py +++ b/algorithmique/cours/conf.py @@ -37,8 +37,8 @@ def setup(app): app.add_config_value('correction', False, 'env') app.add_config_value('exercice', False, 'env') -exercice = False -correction = False +exercice = True +correction = True # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] diff --git a/algorithmique/cours/index.txt b/algorithmique/cours/index.txt index f435f03..aa2ef7d 100644 --- a/algorithmique/cours/index.txt +++ b/algorithmique/cours/index.txt @@ -15,4 +15,5 @@ Introduction à l'algorithmique apercu modularite modules + tp annexes/index diff --git a/algorithmique/cours/tp.txt b/algorithmique/cours/tp.txt new file mode 100644 index 0000000..3d3ebd5 --- /dev/null +++ b/algorithmique/cours/tp.txt @@ -0,0 +1,101 @@ +Travaux Pratiques +================= + +.. ifconfig:: exercice + + **travaux pratiques :** + + Ecrire un algorithme qui renvoie le résultat d’une mini-calculatrice. Cette + méthode aura + comme paramètre deux nombres et une chaîne de caractère qui vaudra « + », « - + », « * », + « / ». + +.. ifconfig:: exercice + + **travaux pratiques :** + + + Ecrire un algorithme qui renvoie si deux mots (chaîne de caractères) passés en + paramètre + sont des anagrammes l’un de l’autre. (Lettres identiques mais dans un ordre + différent) + + +.. ifconfig:: exercice + + **travaux pratiques :** + + ascii art (ligne d'étoiles) + + Concevoir un algorithme qui, pour un caractère imprimable et un nombre n + donnés, imprime une barre + horizontale de n de ces caractères. + + ``****************`` + + 2. Modifier l’algorithme pour l’impression d’une barre double. + + :: + + **************** + **************** + + 3. Modifier l’algorithme pour l’impression d’une barre d’épaisseur quelconque + donnée. + 4. (optionnel) Transformer les algorithmes ci-dessus en fonctions. + 5. Écrire un programme Java implémentant la dernière version de l’algorithme + (épaisseur quelconque). + + 3.3 + Triangle de nombres + Concevoir un algorithme qui imprime pour n donné:: + + 1 + 1 2 + 1 2 3 + 1 2 3 4 + 1 2 3 4 5 + ........... + ............. + ............... + 1 2 3 4 5 6 ... n + +.. ifconfig:: exercice + + **travaux pratiques :** + + code de césar : faire un programme pour chiffrer et déchiffrer par décalage + + exemples : Effectue une rotation de x caractères vers la droite:: + + >>> print(chiffre('bonjour', 3)) + erqmrxu + >>> print(chiffre('Bonjour les amis!', 3)) + Erqmrxu ohv dplv! + >>> print(chiffre('Erqmrxu ohv dplv!', 23)) + Bonjour les amis! + +.. ifconfig:: exercice + + **travaux pratiques :** + + :: + + écrire “Entrer un numéro de mois” + mois <- lire + selon que mois est + cas 1 : écrire “janvier (31 jours)” + cas 2 : écrire “février (28 ou 29 jours)” + cas 3 : écrire “mars (31 jours)” + cas 4 : écrire “avril (30 jours)” + cas 5 : écrire “mai (31 jours)” + cas 6 : écrire “juin (30 jours)” + cas 7 : écrire “juillet (31 jours)” + cas 8 : écrire “août (31 jours)” + cas 9 : écrire “septembre (30 jours)” + cas 10 : écrire “octobre (31 jours)” + cas 11 : écrire “novembre (30 jours)” + cas 12 : écrire “décembre (31 jours)” + défaut : écrire “numéro invalide” + fselon diff --git a/algorithmique/tp.txt b/algorithmique/tp.txt deleted file mode 100644 index a3ebdb4..0000000 --- a/algorithmique/tp.txt +++ /dev/null @@ -1,67 +0,0 @@ -Ecrire un algorithme qui renvoie le résultat d’une mini-calculatrice. Cette -méthode aura -comme paramètre deux nombres et une chaîne de caractère qui vaudra « + », « - -», « * », -« / ». - ---- - -Ecrire un algorithme qui renvoie si deux mots (chaîne de caractères) passés en -paramètre -sont des anagrammes l’un de l’autre. (Lettres identiques mais dans un ordre -différent) - ----- - -code de césar -(code de gray) - ----- -ascii art (ligne d'étoiles) - -Concevoir un algorithme qui, pour un caractère imprimable et un nombre n -donnés, imprime une barre -horizontale de n de ces caractères. -**************** -2. Modifier l’algorithme pour l’impression d’une barre double. -**************** -**************** - -3. Modifier l’algorithme pour l’impression d’une barre d’épaisseur quelconque -donnée. -4. (optionnel) Transformer les algorithmes ci-dessus en fonctions. -5. Écrire un programme Java implémentant la dernière version de l’algorithme -(épaisseur quelconque). - -3.3 -Triangle de nombres -Concevoir un algorithme qui imprime pour n donné : -1 -1 2 -1 2 3 -1 2 3 4 -1 2 3 4 5 -........... -............. -............... -1 2 3 4 5 6 ... n - - -écrire “Entrer un numéro de mois” -mois ← lire -selon que mois est -cas 1 : écrire “janvier (31 jours)” -cas 2 : écrire “février (28 ou 29 jours)” -cas 3 : écrire “mars (31 jours)” -cas 4 : écrire “avril (30 jours)” -cas 5 : écrire “mai (31 jours)” -cas 6 : écrire “juin (30 jours)” -cas 7 : écrire “juillet (31 jours)” -cas 8 : écrire “août (31 jours)” -cas 9 : écrire “septembre (30 jours)” -cas 10 : écrire “octobre (31 jours)” -cas 11 : écrire “novembre (30 jours)” -cas 12 : écrire “décembre (31 jours)” -défaut : écrire “numéro invalide” -fselon -