Algorithme de seuil

Algorithme de seuil

Seuil

TP n°1 : Calculer une somme et déterminer un seuil.

Une usine fabrique de la peinture pour carrosserie.

Elle stocke sa production au fur et à mesure pour honorer une commande de 15 000 L de peinture.

A la fin du premier jour, la production est de 1 000 L.

Ensuite la production diminue chaque jour de 2%.

a)     On appelle \(u_{n}\) la production du \(n^{ieme }\) jour. Donner la valeur de \(u_{1}\).

b)     Donner la relation de récurrence qui permet de calculer \(u_{n + 1}\) en fonction de \(u_{n}\).

c)     On appelle \(S_{n}\) le stock de peinture à la fin du \(n^{ieme }\) jour. Donner une formule qui permet de calculer \(S_{n}\).

d)    Ecrire un algorithme et un programme qui permet de calculer la production de chaque jour, pendant 10 jours.

e)     Ecrire un algorithme et un programme qui permet de calculer chaque jour la valeur du stock de peinture pendant 10 jours.

f)      Ecrire un programme en Python qui permet de connaitre le nombre de jours nécessaires pour obtenir 15 000L de peinture.(programme seuil)

Correction :

a)     \(u_{1} = 1000\).

b)     \(u_{n + 1} = 0,98 \times u_{n}\).

c)     \(S_{n} = u_{1} + u_{2} + \ldots + u_{n} \); ou \(\left\{ {\begin{matrix} {S_{1} = 1000 } \\ {S_{n} = S_{n - 1} + u_{n};(n > 1)} \\ \end{matrix} } \right.\);

d)   Algorithme 1

  \(\begin{array}{l} \left. U\leftarrow 1000 \right. \\ {Pour\,\, n\,\, allant\,\, de\,\, 1\,\, a\,\, 10\,\, faire} \\ \left. \,\,\,\,\,\,\, U\leftarrow 0,98 \times U \right. \\ {FinPour} \\ \end{array}\)

#0101 suite somme seuil.py
#Calcul de la production journalière

U=1000 #U est la production journalière
# en python range (1,11) signifie
# que l'on commence à i=1 jusqu'à i=10
for i in range(1,11):
 print("La production du jour",i,"=",U)
 U=0.98*U

\(\begin{array}{l} \text{La production du jour 1 = 1000} \\ {\text{La production du jour 2 = 980}\text{.0}} \\ {\text{La production du jour 3 = 960}\text{.4}} \\ {\text{La production du jour 4 = 941}\text{.192}} \\ {\text{La production du jour 5 = 922}\text{.36816}} \\ {\text{La production du jour 6 = 903}\text{.9207968}} \\ {\text{La production du jour 7 = 885}\text{.8423808639999}} \\ {\text{La production du jour 8 = 868}\text{.1255332467199}} \\ {\text{La production du jour 9 = 850}\text{.7630225817854}} \\ {\text{La production du jour 10 = 833}\text{.7477621301497}} \\ \end{array}\)

Algorithme 2

\(\begin{array}{l} \left. U\leftarrow 1000 \right. \\ \left. S\leftarrow 1000 \right. \\ {Pour\,\, n\,\, allant\,\, de\,\, 1\,\, a\,\, 10\,\, faire} \\ \left. \,\,\,\,\,\,\, U\leftarrow 0,98 \times U \right. \\ \left. \,\,\,\,\,\,\, S\leftarrow S + U \right. \\ {FinPour} \\ \end{array}\)

#0102 suite somme seuil.py
#Calcul du stock de peinture

U=1000 #U est la production journalière
S=1000 # S est le stock de peinture
# en python range (1,11) signifie
# que l'on commence à i=1 jusqu'à i=10
for i in range(1,11):
 print("Le stock du jour",i,"=",S)
 U=0.98*U
 S=S+U

\(\begin{array}{l} \text{Le stock du jour 1 = 1000} \\ {\text{Le stock du jour 2 = 1980}\text{.0}} \\ {\text{Le stock du jour 3 = 2940}\text{.4}} \\ {\text{Le stock du jour 4 = 3881}\text{.592}} \\ {\text{Le stock du jour 5 = 4803}\text{.9601600000005}} \\ {\text{Le stock du jour 6 = 5707}\text{.880956800001}} \\ {\text{Le stock du jour 7 = 6593}\text{.723337664001}} \\ {\text{Le stock du jour 8 = 7461}\text{.8488709107205}} \\ {\text{Le stock du jour 9 = 8312}\text{.611893492505}} \\ {\text{Le stock du jour 10 = 9146}\text{.359655622655}} \\ \end{array}\)

Programme seuil : Python

Algorithme 3

\(\begin{array}{l} \left. i\,\,\leftarrow 1 \right. \\ \left. U\leftarrow 1000 \right. \\ \left. S\leftarrow 1000 \right. \\ \text{TantQue S<15 000 Faire} \\ \left. \,\,\,\,\,\,\text{U}\leftarrow\text{0}\text{,98} \right. \\ \left. \,\,\,\,\,\,\text{S}\leftarrow\text{S+U} \right. \\ \left. \,\,\,\,\,\text{i}\,\,\,\leftarrow\text{i+1} \right. \\ \text{FinTantque} \\ \end{array}\)

#0103 suite seuil.py
#Calcul du seuil
i=1
U=1000 #U est la production journalière
S=1000 # S est le stock de peinture
# en python while signifie tant que
while S<15000:
 U=0.98*U
 S=S+U
 i=i+1
 print("Le stock du jour",i,"=",S)
print("Il faut",i,"jours pour dépasser les 15 000 Litres")

\(\begin{array}{l} {\text{Le stock du jour 2 = 1980}\text{.0}} \\ {\text{Le stock du jour 3 = 2940}\text{.4}} \\ {\text{Le stock du jour 4 = 3881}\text{.592}} \\ {\text{Le stock du jour 5 = 4803}\text{.9601600000005}} \\ {\text{Le stock du jour 6 = 5707}\text{.880956800001}} \\ {\text{Le stock du jour 7 = 6593}\text{.723337664001}} \\ {\text{Le stock du jour 8 = 7461}\text{.8488709107205}} \\ {\text{Le stock du jour 9 = 8312}\text{.611893492505}} \\ {\text{Le stock du jour 10 = 9146}\text{.359655622655}} \\ {\text{Le stock du jour 11 = 9963}\text{.432462510202}} \\ {\text{Le stock du jour 12 = 10764}\text{.163813259998}} \\ {\text{Le stock du jour 13 = 11548}\text{.880536994799}} \\ {\text{Le stock du jour 14 = 12317}\text{.902926254903}} \\ {\text{Le stock du jour 15 = 13071}\text{.544867729805}} \\ {\text{Le stock du jour 16 = 13810}\text{.113970375209}} \\ {\text{Le stock du jour 17 = 14533}\text{.911690967705}} \\ {\text{Le stock du jour 18 = 15243}\text{.233457148352}} \\ \text{ Il faut 18 jours pour depasser 15 00 litres} \\ \end{array}\)

© Copyright education-du-numerique.fr Tous droits réservés.                            D Pérarnaud  LIMOGES