p = input(`Entrez un entier naturel p : `) somme = 0 k = 0 seuil = 10**p

F.JUNIER 2013/2014 DS n°2 durée 45 minutes ISN
Exercice 1
Le script en Python ci-dessous doit répondre au problème suivant :
prendre en entrée un entier p;
retourner le plus petit entier ntel que 12+22+32+...+(n1)2+n2>10p.
Malheureusement ce script comporte plusieurs erreurs de syntaxe ou de conception.
Repérer et corriger ces erreurs.
1p = input(’Entrez un entier naturel p : ’)
2somme = 0
3k = 0
4seuil = 10**p
5while somme>seuil:
6somme = somme + k**2
7print(’le seuil de %s est passé à partir de n=%s’%(seuil,k))
exo1.py
Exercice 2
On considère la suite (un)définie par ½u0=1
un+1=2un+n.
Ecrire un script Python qui prend en entrée un entier net qui retourne le terme de rang nde la suite (un).
Exercice 3
Compléter le script Python ci-dessous qui prend en entrée une chaîne de caractères, la convertit en minuscules puis qui retourne
une nouvelle chaîne où les voyelles ont été triplées.
1chaine = input(’Entrez une chaine de caractères :\n’)
2#on convertit la chaine en minuscules
3chaine = chaine.lower()
4voyelles = [’a’,’o’,’i’,’u’,’e’,’y’,’é’,’ë’,’è’,’ä’,’à’,’î’,’ù’]
5newchaine = ’’
6for lettre in chaine:
7......
exo3.py
1Entrez une chaine de caractères :
2Passer Noël sur une île au soleil.
3Nouvelle chaine :
4paaasseeer noooëëël suuur uuuneee îîîleee aaauuu soooleeeiiil.
exemple de sortie
Exercice 4
Compléter le script Python ci-dessous qui prend entrée une chaîne de caractères, la convertit en minuscules, puis construit la chaîne
inversée obtenue en parcourant la chaîne initiale de droite à gauche puis qui détermine si la chaîne initiale était un palindrome.
1chaine = input(’Entrez une chaine de caractères :\n’)
2chaine= chaine.lower()
3invchaine = ’’
4for lettre in chaine:
5......
exo4.py
Page 1/2
F.JUNIER 2013/2014 DS n°2 durée 45 minutes ISN
1Entrez une chaine de caractères :
2eluparcettecrapule
3
4Chaîne lue à l’envers
5eluparcettecrapule
6
7C’est un palindrome
exemple de sortie
Exercice 5
1. Compléter le script ci-dessous qui prend en entrée une liste de 20 entiers choisis aléatoirement entre 1 et 10 et qui retourne
le minimum de cette liste :
1from random import randint
2
3liste = [randint(1,10) for iin range(20)]
4print(liste)
5.....
exo5Q1.py
1[791, 941, 948, 974, 78, 178, 346, 727, 474, 463]
2Le minimum de la liste d’entiers est 78
exemple de sortie
2. Modifier le script précédent pour qu’il retourne aussi la liste des index de la liste où le minimum est atteint.
1[10, 5, 9, 3, 10, 2, 5, 9, 8, 8, 4, 6, 7, 6, 8, 4, 10, 4, 2, 6]
2Le minimum de la liste d’entiers est 2
3Le minimum est atteint aux index suivants : [5, 18]
exemple de sortie
Exercice 6
Certains entiers comme 50 peuvent s’écrire d’une ou plusieurs façons comme une somme de deux carrés d’entiers : 50 =72+12et
50 =52+52mais de telles décompositions n’existent pas pour tous les entiers.
Ecrire un script Python qui prend en entrée un entier naturel net qui affiche en sortie toutes les décompositions existantes de n
comme somme de deux carrés et le nombre de décompositions ainsi obtenues. On pourra se limiter à l’affichage du nombre de
décompositions.
On pourra rechercher les décompositions de la forme n2=i2+j2avec des entiers iet jvérifiant 1 6i6j6pn. La condition i6j
permet d’éviter de compter deux fois la même décomposition, par exemple 50 =72+12=12+72.
1Entrez un entier n : 925
2925 = 5^2 + 30^2
3925 = 14^2 + 27^2
4925 = 21^2 + 22^2
5Il y a 3 décompositions de 925 en somme de deux carrés d’entiers.
exemple de sortie
Page 2/2
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 !