Lycée Brizeux – 2015/2016 Informatique – PCSI
TP NO1
OU PETITS PROGRAMMES EN VRAC
Consignes :
Ouvrez votre session. Dans votre dossier personnel, créez un dossier (par exemple " ").
Ouvrez ensuite l’environnement de développement « spyder ». La partie gauche de la fenêtre
contient un éditeur de texte. Vous y écrirez vos programmes. Commencez par sauvegarder le fi-
chier dans le dossier qui vient d’être crée (par exemple sous le nom " "). À chaque
exercice, vous enregistrerez un nouveau fichier.
Les programmes seront écrit en python 3.
Avant d’écrire un programme sur la machine, vous écrirez sur feuille l’algorithme correspondant
(avec un schéma), puis la traduction en language python.
Les commentaires seront précédés d’un croisillon . Il est important de commenter tous vos
programmes et d’utiliser des noms de variables explicites.
Travail à rendre : à l’issue du TP, vous rendrez un (seul) fichier (.py) contenant vos programmes
réalisés pendant le TP et les programmes supplémentaires qui vous seront demandés. Envoyez
votre fichier via la plateforme Moodle (lien dans la page « cahier de texte » de la classe).
1 Instructions d’entrée et de sortie avec python
L’instruction permet d’affecter dans la variable la réponse
de l’utilisateur à la phrase « Entrer une donnée ».
Par défaut, python considèrera que la variable entrée est une chaîne de caractères. Si vous souhaitez
que l’utilisateur entre une valeur numérique, vous devrez donc la convertir.
Exemples :
, si est un nombre entier,
, si est un flottant.
L’instruction permet d’afficher, lors de l’exécution d’un programme,
des « blocs » de données de tout type : ici, la chaîne de caractère « Du texte ou » sera écrite, et suivie de
la valeur de la variable .
Pour éviter un retour à la ligne, on écrira
Exercice 1 : Tester les fonctions et . Par exemple :
2 Instructions conditionnelles
Si .. . alors .. . Si .. . alors..., sinon.. . Si .. . alors.. ., sinon, si .. .
condition
instruction(s)
condition
instruction(s)
autre(s) instruction(s)
condition
instruction(s)
autre condition
autre(s) instruction(s)
encore d’autres instruc-
tions
Attention : L’indentation est signifiante.
Exercice 2 : Valeur absolue
Écrire un programme qui, étant donné un nombre x, renvoie sa valeur absolue.
1/3
Lycée Brizeux – 2015/2016 Informatique – PCSI
Exercice 3 : Équations du second degré
1. Écrire un programme pour résoudre de telles équations
On peut calculer la racine carrée d’un nombre positif en le mettant à la puissance
2. Tester le programme sur les équations suivantes :
x2+x+1=0, 3x2+2x1=0, x26
7x+9
49 =0, et x22
5x+1
25 =0.
Exercice 4 : Années bissextiles
Une année est dite bissextile si c’est un multiple de 4, sauf si c’est un multiple de 100. Toutefois,
elle est considérée comme bissextile si c’est un multiple de 400.
Écrire un programme pour déterminer si une année donnée est bissextile ou non.
3 Boucles du type
Si on a l’intention de répéter fois un certain bloc d’instructions, la syntaxe dans Python est :
compteur
instruction(s)
La variable compteur parcourt l’ensemble des entiers compris entre net m1 suivant un pas donné.
Si le pas est omis, alors .
Si nest omis, alors n=0. En particulier, donne la séquence 0,1,2,...,m1.
Exercice 5 : Liste de carrés
Faire afficher la liste de tous les carrés des entiers compris entre 5 et 15.
Exercice 6 : Table de multiplication
1. Écrire un programme affichant la table de multiplication de 0 à 12 d’un entier N.
2. Modifier le programme pour qu’il signale ceux qui sont multiples de 3.
Exercice 7 : Factorielle
Écrire un programme qui, étant donné un entier positif n, renvoie n!=1×2×3× · · · × n.
4 Boucles du type
Lorsqu’on veut qu’une (ou plusieurs) instruction(s) se répète(nt) tant qu’une condition est vérifiée,
on écrit :
condition
instruction(s)
ATTENTION ! La condition doit évoluer à chaque itération pour éviter que la boucle se répète indéfini-
ment.
Exercice 8 : Écrire un programme qui demande à l’utilisateur d’entrer un entier A et qui affiche le pre-
mier nombre entier positif ntel que n! soit strictement plus grand que A.
Exercice 9 : On considère la suite (un) définie, pour tout entier naturel n, par un=1
n3+n+2. Celle-ci
est décroissante et converge vers 0.
Écrire un programme qui permette d’obtenir le premier rang nà partir duquel un60,001.
2/3
Lycée Brizeux – 2015/2016 Informatique – PCSI
5 Pour aller plus loin
Exercice 10 : L’échiquier de Sissa
Une légende de l’Inde ancienne raconte que l’ancêtre du jeu d’échecs a été inventé par le brah-
mane Sissa vers 3000 ans avant notre ère, mais l’origine du jeu d’échecs est controversé.
L’histoire raconte que le roi Belkib promit une récompense fabuleuse à qui lui proposerait une dis-
traction qui le satisferait. Lorsque le brahmane Sissa lui présenta son jeu d’échecs, il lui demanda
ce qu’il souhaitait comme cadeau en récompense. Sissa demanda qu’on lui fournisse simplement
un peu de riz pour ses vieux jours, et plus précisément un nombre de grains de riz suffisant pour
que l’on puisse en déposer un seul sur la première case du jeu qu’il venait d’inventer, deux sur
la suivante, quatre sur la troisième, et ainsi de suite. Le roi accorda immédiatement cette récom-
pense.. .
1. Écrire un programme pour afficher le nombre de grains à déposer sur chacune des 64 cases
du jeu.
On affichera le nombre de grains de riz sur chaque case.
On calculera également la somme totale de grains de riz qu’il y a sur l’échiquier.
2. En considérant qu’un grain de riz a une masse moyenne de 0,04 g, déterminer la masse (en
tonnes) de riz que cette somme représente.
3. La production mondiale de riz en 2013, estimée par la Food and Agriculture Organization
des Nations Unies, est d’environ 740 millions de tonnes. En se basant sur cette donnée, dé-
terminer la durée de production nécessaire (en années) pour remplir l’échiquier.
Exercice 11 : Prêt immobilier
L’algorithme pour simuler l’évolution d’un prêt immobilier est le suivant :
Entrer 3 flottants credit, taux, annuite.
L’entier annee reçoit la valeur 0.
Si annuite taux ×credit alors il est impossible de rembourser ce prêt.
Sinon :
Tant que credit > 0 faire :
credit reçoit la valeur (1+taux)×credit - annuite.
annee reçoit la valeur annee + 1.
Fin Tant que
Afficher annee.
Fin Si
1. Programmer et tester cet algorithme.
2. Que représente la variable à la fin de l’algorithme ?
3. Que risque-t-il de se passer si le test initial est omis ?
Exercice 12 : Nombres de Mersenne
Pour n>2 entier naturel fixé, on appelle n-ième nombre de Mersenne le nombre Mn=2n1. Les
premiers nombres de Mersenne sont donc 3, 7, 15, .. .
1. Écrire un programme calculant et affichant Mnpour ndonné.
2. En remarquant que Mn+1=2Mn+1, écrire un programme affichant les nombres de Mer-
senne inférieurs à 100 000.
3. Parmi eux certains sont premiers. Écrire un programme affichant les nombres de Mersenne
qui sont premiers et inférieurs à 100 000.
Exercice 13 : Multiplication des lapins
Leonardo Fibonacci est un mathématicien italien du XIIIe siècle qui a posé le problème suivant :
« Un homme met un couple de lapins dans un lieu isolé de tous les côtés par un mur. Combien
de couples obtient-on en un an si chaque couple engendre tous les mois un nouveau couple à
compter du deuxième mois de son existence ? »
Notant Unle nombre de couples de lapins au bout de nmois, on peut montrer que les termes de
cette suite sont définis par : U0=1, U1=1 et Un+2=Un+1+Un.
Écrire un programme pour afficher le 2015eterme de cette suite.
On pourra utiliser judicieusement l’affectation multiple.
3/3
1 / 3 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 !