Une belle aventure
Pour le 3 Novembre, minuit.
En pleine nuit, le téléphone sonne. « Monsieur, on vous attend au Louvre, c’est urgent ». La voix, rauque
et ténébreuse, semble sérieuse et impatiente. Vous enfilez vos vêtements et sans prendre le temps d’avaler
le reste de café froid de la veille, vous vous rendez au Louvre en taxi. Arrivé au musée, vous remarquez
l’étrange cortège de voitures de police et le balai de lumières bleutées qui vous aveugle. Vous êtes rapide-
ment pris en charge par un homme au regard sombre qui vous emmène d’un pas alerte dans les méandres
du Louvre. Dans la pénombre, vous distinguez, allongé sur le sol, un corps qui vous semble familier.
Soudain, le réveil sonne. Ce n’était qu’un rêve. Vous vous rappelez alors l’annonce lue la veille dans le
journal : « On recherche, pour aventure extraordinaire, jeune symbologiste, H/F. Goût du risque et de
l’aventure obligatoire. Des compétences en déchiffrage de nombres romains et étude de suites seraient un
plus ». Vous interprétez alors ce rêve comme un signe et décidez de vous présenter à l’entretien. Mais un
entretien, ça se prépare.
1 Étude d’une suite.
On définit une suite de nombres appelée Fde la façon suivante :
F0= 1
F1= 1
Fn=Fn1+Fn2
Donnez les 10 premiers termes de la suite.
Écrire en Python un programme permettant de donner les 20 premiers termes de cette suite. On pourra
choisir de stocker les termes de la suite au fur et à mesure dans une liste Fen utilisant l’instruction
F.append()..Pour accéder au
dernier terme d’une
liste Lon utilise
L[-1]. Idem pour
L[-2] et l’avant-
dernier terme.
Écrire en Python un programme qui demande à l’utilisateur un entier net renvoie la valeur de Fn.
Écrire en Python un programme qui calcule le 20-ième terme de la suite rn=Fn+1
Fn
.
Modifier ce programme afin qu’il s’arrête lorsque la différence |rn+1 rn|est inférieure à 105et
retourne la valeur de rnainsi que l’entier nassociés.
Quel est ce nombre ?
2 Décrypter les chiffres romains
On ne s’intéresse pas ici à la validité d’un nombre écrit en chiffre romains, mais à sa valeur. On rappelle
quelques principes de base. Les sept caractères de la numération romaine sont :
I V X L C D M
1 5 10 50 100 500 1000
Pour trouver la valeur d’un nombre écrit en chiffres romains, on s’appuie sur les règles suivantes :
toute lettre placée à la droite d’une lettre dont valeur est supérieure ou égale à la sienne s’ajoute
à celle-ci ;
toute lettre d’unité placée immédiatement à la gauche d’une lettre plus forte qu’elle indique que
le nombre qui lui correspond doit être retranché au nombre qui suit ; .Lettre d’unité : I
est une unité pour
V et X, X est une
unité pour L et C,
C est une unité
pour D et M.
les valeurs sont groupées en ordre décroissant, sauf pour les valeurs à retrancher selon la règle
précédente ;
1
la même lettre ne peut pas être employée quatre fois consécutivement sauf M.
Vérifier qu’en suivant ces règles, on trouve bien DXX XV I = 536,CIX = 109 et M CM X L = 1940.
Écrire une fonction valeur(caractere) qui retourne la valeur décimale d’un caractère romain. Cette
fonction doit renvoyer 0 si le caractère n’est pas l’un des 7 chiffres romains.
Écrire le programme principal qui permet de convertir un nombre romain en nombre décimal. Voici un
algorithme pour vous aider :
initialiser un variable resultat à0;
demander à l’utilisateur un nombre romain. On stocke ce résultat dans la variable nombre ;
parcourir nombre en lisant à chaque fois un caractère et le caractère suivant, notés car et carsuiv ;
transformer car et carsuiv en leur valeur val et valsuiv selon la fonction précédente ;
si val<valsuiv on ajoute -val àresultat. Sinon, on ajoute val àresultat ;
afficher resultat.
3 Conclusion
.Par mentor, on
entend évidem-
ment : dernier
encadrant de TP.
Fier de vos programmes développés et afin de protéger vos arrières, vous ne pouvez vous empêcher
d’envoyer vos fichiers .py à votre mentor afin qu’il puisse se rendre compte du travail que vous avez
effectué. Ne tenant plus vous lui transmettez par mail sans plus attendre, et avant le 3 novembre à
minuit (horaire de réception faisant foi), le fruit de votre travail. Les fichiers Python devront être lisibles,
directement exécutables et facilement modifiables afin d’être testés (choisissez correctement les noms de
variable, pensez à mettre des commentaires, aérez votre code...).
2 TP Informatique - Introduction à Python
Lycée Montesquieu
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !