Feuille d'exercices sur Python (pour les élèves de spécialité mathématiques)
Exercice 1
On considère la fonction suivante, où \(n\) est un entier naturel:
1 2 3 4 |
|
-
Quelle est la valeur affichée en sortie par cet algorithme pour \(n = 11\) ?
-
Quelle est la valeur affichée en sortie par cet algorithme pour \(n = 35\) ?
-
Quelle est la valeur affichée en sortie par cet algorithme pour \(n = 40\) ?
Corrigé
- La valeur retournée est 1
- La valeur retournée est 5
- La valeur retournée est 10
Exercice 2
On considère le programme suivant, où S est un nombre décimal :
1 2 3 4 5 6 |
|
-
Appliquer ce programme pour \(S = 6500\).
On place 6500€ à intérêts composés au taux semestriel de 5%.
-
Au bout de combien de semestres le capital acquis sera-t-il de plus de 8000€
-
Que faut-il modifier dans le programme pour déterminer au bout de combien de semestres le capital acquis dépassera 10000€ ?
Corrigé
-
Il retourne \(n=5\) et \(S \approx 8295.83\)
-
Au bout de 5 semestres le capital acquis dépassera 8000€.
-
On remplace la troisième ligne par
while S<10000
.
Exercice 3
On considère le programme suivant:
1 2 3 4 5 6 7 8 9 |
|
-
Que fait ce programme ? L'exécuter et préciser le résultat final affiché (on mettra le détail des étapes et les résultats intermédiaires en les présentant dans un tableau par exemple).
-
Proposer une relation de récurrence permettant d'expliquer ce que ce programme permet de calculer.
Corrigé
-
Au départ \(a=0\), \(b=1\) et \(k=0\).
Le tableau donne les valeurs des variables à la fin de chaque exécution de la boucle
while
.Au départ \(a=0\), \(b=1\) et \(k=0\).
\(u\) \(a\) \(b\) \(k\) 1 1 1 2 2 1 2 3 3 2 3 4 5 3 5 5 8 5 8 6 -
On reconnaît la suite de Fibonacci. \(u_{n+2}=u_{n+1}+u_{n}\).
Exercice 4
La suite \((u_n)\) est définie pour tout entier naturel \(n\) non nul.
La fonction ci-dessous permet de calculer son terme d'indice \(n\).
1 2 3 4 5 6 |
|
-
Faire tourner la fonction pour \(n = 3\). Remplir un tableau décrivant l'évolution de \(u\). Que vaut \(u_3\) ?
-
MĂŞme chose pour \(n = 4\).
-
Exprimer le terme général de \(u_n\) en fonction de \(n\) sous forme d'une somme.
-
a. Un tableur fournit les 9 premiers termes de la suite \((u_n)\).
\(n\) \(1\) \(2\) \(3\) \(4\) \(5\) \(6\) \(7\) \(8\) \(9\) \(u_n\) 0 1 2.67 5 8 11.67 16 21 26.67 \(3u_n\) 0 3 8 15 24 35 48 63 80 À l'aide de la troisième ligne, donnant les 9 premières valeurs de \(3u_n\), conjecturer l'expression de \(u_n\) en fonction de \(n\).
b. Montrer que pour tout \(n \in \mathbb{N}\), \(u_{n+1}=\dfrac{1}{n+1} \times (nu_n+n(n+1))=\dfrac{nu_n}{n+1}+n\).
c. Démontrer par récurrence la conjecture du a.
Corrigé
-
Avant la boucle
for
,i
n'est pas affecté etu
vaut 3.|
u
|i
| |3|1| |5|2| |11|3|Ă€ la fin du programme, on retourne \(u_3=\dfrac{11}{3}\).
-
Avant la boucle
for
,i
n'est pas affecté etu
vaut 4.|
u
|i
| |4|1| ||| ||| |||
Exercice 5
-
Soit \(f\) la fonction définie par \(f(x)=x^3-3x^2+2\).
a. Étudiez le sens de variation de \(f\).
b. Calculer \(f(-20)\) et \(f(30)\).
c. DĂ©terminer le nombre de solutions de l'Ă©quation \(f(x)=0\) (Justifier).
-
Programme
1 2 3 4 5 6 7 8 9 10
a=float(input("Entrez la borne gauche")) b=float(input("Entrez la borne droite")) if f(b)*f(a)<=0: while b-a>10**(-5): if f((a+b)/2)*f(a)<=0: b=(a+b)/2 else: a=(a+b)/2 print(a,b)
a. Qu'implique la condition
f(b)*f(a)<=0
sur \(f(b)\) et \(f(a)\) ?b. Que représente \(\dfrac{a+b}{2}\) par rapport à \(a\) et \(b\) ?
c. Que fait ce programme ?
d. L'Ă©crire sur une calculatrice ou un ordinateur
e. Que se passe-t-il si l'utilisateur entre les valeurs \(a=-20\), \(b=30\) ? \(a=-20\) et \(b=3\) ? \(a=0\) et \(b=3\) ?
Exercice 6
Soit le programme:
1 2 3 4 5 6 7 8 9 10 |
|
-
À quelle ligne peut-on lire la fonction utilisée ?
-
Que fait ce programme ? À quoi correspondent
c
etmaxi
? -
Sans exécuter ce programme, indiquer le couple de valeurs obtenu.
-
Quelle ligne du programme doit-on modifier pour étudier la fonction définie par \(f(x)=x\ln{x}-x\) ?
-
Soit la fonction définie sur \([-1;1]\) par \(f(x)=x\sqrt{1-x^2}\). Étudier le sens de variation de cette fonction.
Le résultat obtenu par le programme est-il cohérent avec les résultats théoriques ?
Corrigé
-
Ă la ligne 6
-
Ce programme retourne le maximum de la fonction \(f(x)=x\sqrt{1-x^2}\) sur l'intervalle \([0;1]\), ainsi que son abscisse.
-
Le programme retourne \(0.7\) et \(f(0.7) \approx 0.499899\).
-
On doit remplacer
y=x*sqrt(1-x**2)
pary=x*ln(x)-x
. -
Des maths faciles !
Exercice 7
Soit la fonction \(f\) définie sur \(\mathbb{R}\) par \(f(x)=4e^{0.5x}-5\).
On considère le programme en Python suivant:
1 2 3 4 5 6 7 |
|
a. On entre une valeur de \(p\) égale à \(0.1\). Quelles sont les valeurs affichées en sortie ?
b. On a fait fonctionner le programme avec une certaine valeur de \(p\) et on a obtenu en sortie les nombres \(0.44\) et \(0.45\). Quelle valeur de \(p\) avait-on choisie en entrée ?
c. On entre une valeur de \(p\) égale à \(0.001\). Quelles sont les valeurs affichées en sortie ?
Exercice 8
On suppose que l'on dispose d"une fonction \(f\) continue sur \(\mathbb{R}\), de deux valeurs \(a\) et \(b\) réelles telles que \(a<b\) et d'un nombre réel \(p\).
On considère alors le programme en Python suivant:
1 2 3 4 5 |
|
-
Prévoir ce que ce programme va afficher pour \(f(x)=3x-1\), \(a=0\), \(b=1\) et \(p=0.1\).
-
On suppose dans cette question que l'on a \(f(x)=3x-1\), \(a=0\), \(b=1\) et \(p=0.1\).
a. Pourquoi ce programme s'arrête-t-il toujours ? Peut-on prévoir le nombre maximal d'étape qu'il aura à accomplir ?
b. Expliquer pourquoi il n'y a qu'une seule valeur affichée par ce programme. Pour quelle(s) valeur(s) de \(p\) affiche-t-il \(0.2\) ? Peut-il afficher \(0.1\) ?
-
Expliquer ce que permet d'afficher ce programme en général. (\(f\),\(a\) et \(b\) étant quelconques).
Exercice 9
Dans un lycée, un code d'accès à la photocopieuse est attribué à chaque professeur. Ce code à quatre chiffres choisis dans la liste [0,1,2,3,4,5,6,7,8,9]
, chaque chiffre pouvant être répété à l'intérieur d'un même code. Exemples: \(0027\) et \(4879\).
-
Combien de codes sont possibles ?
-
Ce code permet aussi de définir un identifiant pour l'accès au réseau informatique. L'identifiant est constitué du code précédent (noté \(n\)) et d'une clé calculée avec le programme ci-dessous:
1 2 3 4 5 6 7 8 9 10 11 |
|
Quel est l'identifiant associé au code 2282 ?
Exercice 10
DĂ©terminer le nombre afficher en sortie du programme ci-dessous, si on le fait fonctionner pour \(n=3\).
1 2 3 4 5 6 7 8 |
|
Exercice 11
On considère la fonction suivante:
1 2 3 4 5 6 7 8 9 |
|
-
Justifier que, pour \(n=3\), l'affichage obtenu est \(11\) pour \(u\) et \(21\) pour S.
-
Reproduire et compléter le tableau suivant :
Valeur de \(n\) | \(0\) | \(1\) | \(2\) | \(3\) | \(4\) | \(5\) |
---|---|---|---|---|---|---|
Affichage pour \(u\) | \(11\) | |||||
Affichage pour \(S\) | \(21\) |
Exercice 12
Voici un programme qui permet de réaliser une simulation:
1 2 3 4 5 6 7 |
|
Corrigé
Ce programme permet de simuler n
fois le lancer d'un dé et retourne une liste qui contient le nombre de fois que le 1 est obtenu, le nombre de fois que le 2 est obtenu, le nombre de fois que le 3 est obtenu,...
Exercice 13
Soit le programme suivant:
1 2 3 4 5 6 |
|
Expliquer le fonctionnement de ce programme et donner ce qu'il affiche.
Corrigé
Ce programme teste si chaque élément de la liste L
est positif et stocke cet élément dans la liste R
si c'est le cas.