© Copyright Franck CHEVRIER 2019-2022 https://www.python-lycee.com.
Les activités partagées sur Capytale sont sous licence Creative Commons.
Pour exécuter une saisie Python, sélectionner la cellule et valider avec SHIFT+Entrée.
Dans cette activité, on s'intéresse à des châteaux de cartes, comme réalisé ci-dessus.
On décide de compter les étages à partir du haut, et on note $u_n$ le nombre de cartes du $n$ème étage d'un tel château, pour tout $n\in\mathbb{N}^*$.
Ainsi, on a : $u_1=2$ ; $u_2=5$ ; ...
# Écrire ici la fonction u(n)
def u(n):
"fonction qui calcule le nombre de cartes du n ème étage du château"
return 2+3*(n-1)
$\;\;\;$b. Effectuer des appels à la fonction u(n) pour vérifier les résultats de la question 1.
# Effectuer ici les appels à la fonction
u(3)
8
u(4)
11
u(5)
14
4. On note $\displaystyle S_n=\sum_{k=1}^{n}{u_k} =u_1+u_2+...+u_n$ le nombre total de cartes d'un château de $n$ étages.
$\quad$a. Écrire une fonction Python S(n) qui renvoie $S_n$.
$\quad\quad$Aide :
$\quad\quad$La syntaxe for k in range(1,n+1): permet de créer une boucle dans laquelle le compteur k prend les valeurs entières de 1 à n inclus.
# Écrire ici la fonction S(n)
def S(n):
"fonction qui calcule le nombre total de cartes d'un château de n étages"
R=0
for k in range(1,n+1):
R = R + u(k)
return R
$\quad$b. À l'aide d'un appel à la fonction S(n), déterminer le nombre de cartes d'un château de 10 étages.
# Effectuer ici l'appel à la fonction
S(10)
155
5. a. Rappeler la formule permettant le calcul de la sommme des termes d'une suite arithmétique.
$\;\;\;$b. En déduire une expression de $S_n$ en fonction de $n$.
$\;\;\;$c. Écrire une fonction Python S2(n) qui renvoie la valeur de $S_n$ à l'aide de cette expression.
$\quad\quad$Aide :
$\quad\quad$On pourra utiliser la syntaxe //, qui permet d'obtenir un quotient entier (de type int).
# Écrire ici la fonction S2(n)
def S2(n):
"fonction qui calcule le nombre total de cartes d'un château de n étages"
return n*(3*n+1)//2
$\;\;\;$d. Retrouver le résultat de la question 4.b à l'aide d'un appel à la fonction Python S2(n).
# Effectuer ici l'appel à la fonction
S2(10)
155
6. a. Écrire une fonction Python hauteur(m)qui renvoie la hauteur maximale du château que l'on peut réaliser avec m cartes.
$\quad\quad$Aide :
$\quad\quad$On pourra tester successivement les valeurs de S(n) à l'aide d'une boucle while.
# Écrire ici la fonction hauteur(m)
def hauteur(m):
"fonction qui calcule le nombre total de cartes d'un château de n étages"
n=1
while S(n)<=m:
n = n+1
return n-1
$\;\;\;$b. À l'aide d'un appel à la fonction hauteur(m), déterminer la hauteur maximale du château que l'on peut réaliser avec 6 jeux de 54 cartes.
# Effectuer ici l'appel à la fonction
hauteur(6*54)
14
© Copyright Franck CHEVRIER 2019-2022 https://www.python-lycee.com.
Les activités partagées sur Capytale sont sous licence Creative Commons.
Dernière modification de l'activité : Juillet 2022