Inscription / Connexion Nouveau Sujet

1 2 +


Niveau première
Partager :

Les suites et langage python

Posté par
emmaa2
21-03-22 à 16:13

Bonjour à tous!
voici le sujet de mon exercice,  sur les suites avec du langage python. Sachant qu'en cours nous avons vu les bases python et les petits programmes.
Merci d'avance pour le temps que vous y consacrerez!

introduction: La loi du refroidissement de Newton énonce que la vitesse de refroidissement (ou le taux de perte de chaleur) d'un corps est proportionnel à la différence de température entre le corps et le milieu environnant.

Situation: Dans une usine ,un four cuit des céramiques à la température de 1000°C. A la fin de la cuisson, il est éteint et il refroidit. On s'intéresse à la phase de refroidissement du four, qui débute dès l'instant où il est éteint. La température du four est exprimé en degré Celsius.
La porte du four peut être ouverte sans risque pour les céramiques dès que sa température est inférieure à 70°C. Sinon les céramiques peuvent se fissure, voire se casser.

Questions:
Partie A : comme algorithme
Pour un nombre entier naturel n, on note Tn la température en degré Celsius du four au bout de n heures écoulées à partir de l'instant où il à été éteint. On a donc T₀ = 1000.
La température Tn est calculée par l'algorithme suivant:

Demander n
T <-- 1000
Pour i allant de 1 à n
       T <-- 0.82 x T + 3.6
Fin pour
Afficher T

1.Programmer cet algorithme en langage  Python (donner le code sur votre feuille). Tester l'algorithme (donner deux exemples de résultats).
n=input("n=")
n = int(n)
for i in range (n)
          T = 0.82 x T + 3.6
print(T)
Je ne sais pas si c'est juste mais voila le programme traduit en python.


2. Écrire une fonction L en langage Python qui à partir d'un nombre entier naturel 𝑛 retourne la liste des températures du four entre 0 et 𝑛 heures.
Pour définir une fonction en python, on utilise
def T(n) avec T la température et n le nombre d'heures
et on termine par return(T) voilà tout ce que je sais, je n'arrive pas a transformer la question en fonction..


3. Remplir le tableau suivant (arrondir à l'entier le plus proche) :

       𝑛                      0     1     2     3      4   5   10 20
Température
Pas de réponse étant donné que je ne sais pas la question précédente

4) Écrire un programme en langage Python qui calcule et affiche le nombre d'heures nécessaire d'attente pour pouvoir ouvrir la porte du four sans risque pour les céramiques.
u=0.82 x T + 3.6
n=0
while u<70
u = u * 0.82 x T + 3.6
n=n+1
print (n)
Je ne sais pas du tout si ce programme est valide.


5) Émettre des conjectures sur le comportement de cette suite.
Même si je n'ai pas beaucoup de réponse, je pense que cette suite sera décroissante. Elle est géométrique de raison q = 0.82 ?

Partie B = Avec une formule explicite.
Partie non commencée, j'attend de recevoir de l'aide et de voir si ma partie A et fiable
On considère la suite (𝑈𝑛) définie pour tout 𝑛 entier naturel par : 𝑈𝑛 = 𝑇𝑛 − 20.

1) Calcule les premiers termes de cette suite et émettre une conjecture sur la nature de cette suite.

2) Démontrer cette conjecture.

3) Pour tout 𝑛 entier naturel, exprimer 𝑈𝑛 en fonction de 𝑛 puis en déduire 𝑇𝑛 en fonction de 𝑛.

4) Vérifier les résultats obtenus dans la partie A en utilisant cette dernière formule.


Merci beaucoup à ceux qui m'aideront et qui prendront le temps de m'expliquer
Emma

Posté par
carpediem
re : Les suites et langage python 21-03-22 à 17:52

salut

script python : il manque l'initialisation de T ... dans tous les scripts ...

Posté par
carita
re : Les suites et langage python 21-03-22 à 21:25

bonsoir à tous les deux,


1. tu peux (pas obligatoire) remplacer les 2 lignes
n=input("n=")  
n = int(n)

directement par   n = int(input("n="))

n'oublie pas les : (deux points) après une instruction for
for i in range (n) :

et utilise le symbole adéquat pour la multiplication en python.

fais toutes les corrections nécessaires (dont celle indiquée par carpediem), saisis ton script et fais tourner ton programme.


2. Écrire une fonction L en langage Python qui à partir d'un nombre entier naturel 𝑛 retourne la liste des températures du four entre 0 et 𝑛 heures.

def T(n) avec T la température et n le nombre d'heures ---  non, écrit ici,  le T c'est le nom de la fonction, rien à voir avec la variable T utilisée précédemment.

et on termine par return(T) ---   attention, le return doit renvoyer ici une liste de températures

==> clarifie bien le nom que tu souhaites donner à tes différentes variables et objets : un nom  différent pour chaque objet que tu vas utiliser.

pour cette question 2) commence par rédiger un algorithme en langage naturel : comment tu ferais, à la main, pour obtenir cette liste demandée ?

4) plusieurs erreurs de syntaxe, d'indentation, de logique...
as-tu déroulé ton programme ligne à ligne à la main pour observer l'évolution du contenu de ta variable u  ?
et d'ailleurs, pourquoi cette variable u ?

5) décroissante (normal !) mais pas géométrique.

la partie B est indépendante de python.

Posté par
emmaa2
re : Les suites et langage python 21-03-22 à 22:00

Bonsoir
Pour la 1) c'est a dire l'initialisation de T? Il faut mettre T = 1000 ?
donc..
T = 1000
u= 0
n=input("n=")
n = int(n)
for i in range (n)
          T = 0.82 x T + 3.6
print(T)     ?

2) Pour la fontion,
def temperature (heures) ? je ne sais pas faire pour trouver une liste de nombre avec la fonction..

Posté par
carita
re : Les suites et langage python 22-03-22 à 10:10

bonjour,

emmaa2, tu n'as pas tenu compte de toutes les observations... relis plus attentivement


carita @ 21-03-2022 à 21:25

n'oublie pas les : (deux points) après une instruction for
for i in range (n) :

et utilise le symbole adéquat pour la multiplication en python.

... saisis ton script et fais tourner ton programme.

....

==> clarifie bien le nom que tu souhaites donner à tes différentes variables et objets

... pourquoi cette variable u ?



1) Il faut mettre T = 1000 ? oui bien sur, au début la température du four est de 1000°C : on dit que l'on initialise la variable T à 1000

T = 1000
u= 0     ----> à quoi sert cette variable u ?
n=int(input("n="))

for i in range (n)     ----> et les ":"  ?
          T = 0.82 x T + 3.6       ----> et le symbole de la multiplication en python?
print(T)    

questions :
que contient la variable T dans ce programme ?
que fait ce programme ? (teste le pour quelques valeurs de n)


2) Pour la fonction,
def temperature (heures) ?   ---- oui, par exemple, tu peux appeler cette fonction "temperature"

la liste que l'on te demande est la liste des termes de la suite Tn.
par exemple pour n=2, le programme doit renvoyer les valeurs de T0, T1 et T2 sous forme de liste.
quelle sera donc la différence majeure entre ce programme et celui de la question 1 ?


carpediem, tu reprends la main quand tu veux.

Posté par
emmaa2
re : Les suites et langage python 22-03-22 à 14:39

Bonjour
1)
Dans ce programme u = 0 pour moi correspond au premier terme To ?
T = 1000
u= 0
n=int(input("n="))
for i in range (n):  
          T = 0.82 * T + 3.6
print(T)    
jai repris mes erreurs en bleu.
La variable T c'est la variation de la température en fonction des heures qui s'écoulent
ce programme ainsi nous donne la température du four au bout de n heures ?
Par exemple pour la première heure donc T1, on a
T = 0,82¹ x 1000 + 3,6 ?
Ce qui donne 823,6 degrés Celcius donc T1 = 823,6
Et pour T2 on aurait T = 0,82² x 1000 + 3,6 = 676 degrés ?


2) Donc à la différence du programme de la question 1, on aura pas une valeur pour un nombre d'heures mais toute la liste des températures du four de 0 à n heures
def temperature (heures):
          T = 0.82 * T + 3.6
return(T)
donc ici j'ai posé la fonction qui pour un nombre n d'heures va donner la température ?
Cependant on nous parle de liste, donc il faut ajouter une liste L ?

Posté par
carita
re : Les suites et langage python 22-03-22 à 15:42


1)
Dans ce programme u = 0 pour moi correspond au premier terme To ? -- non,  le 1er terme de la suite est T0 = 1000
peut-être veux-tu dire "indice" ? mais l'algorithme ne gèrera pas les indices des différents termes.

par ailleurs, vu que tu n'utilises pas la variable u ailleurs dans ton algorithme, il n'y a aucune raison raison de réserver cette variable.
comprends-tu  ? quand on réserve une variable dans un algorithme, c'est pour l'utiliser, sinon c'est inutile.
donc :

T = 1000
n= int(input("n="))

for i in range (n):
       T = 0.82 * T + 3.6
print(T)  
     --  tape ce script et fait tourner le programme, par exemple pour n=2,
et compare le résultat avec ce que tu as trouvé pour T2...


que contient la variable T dans ce programme ?
La variable T c'est la variation de la température en fonction des heures qui s'écoulent.
==> la variable T contiendra successivement toutes les valeurs des termes de la suite, au fil des heures.

ce programme ainsi nous donne la température du four au bout de n heures ?     --- très bien !

au début T = 1000 ---- T contient donc T0
puis, dans la boucle for, à chaque itération, T va contenir le terme suivant de la suite (Tn),
comme tu l'as décrit ci-dessous (mais avec erreur, signalée en rouge) :

Par exemple pour la première heure donc T1, on a
T = 0,82¹ x 1000 + 3,6 = 823,6  -----  oui, mais pourquoi ce "puissance 1" ?    il n'y a pas de calcul de puissance dans l'algo de l'énoncé.

Et pour T2 on aurait T = 0,82² x 1000 + 3,6 = 676 degrés
  --- mm remarques que ci-dessus.

remarque utile pour la 2)  : tu constates que pour obtenir T3, par exemple, le script va calculer successivement T1, puis T2, puis T3... et retourner seulement T3

==> avant de poursuivre, peux-tu nous donner une définition par récurrence de la suite décrite par l'algo de l'énoncé ?
(i.e. exprimer Tn+1 en fonction de Tn)


2)
ton script n'est pas correct; entre autres, ce n'est pas T que tu dois retourner, mais une liste.

Donc à la différence du programme de la question 1, on aura pas une valeur pour un nombre d'heures mais toute la liste des températures du four de 0 à n heures ---- exactement !

==> on peut utiliser la logique du script de la question 1, en y apportant quelques modifications qui permettent,  à chaque itération dans la boucle, de compléter une liste avec la valeur calculée T.
appelle L ta liste
au début, on crée une liste vide :   L = []
je te laisse faire des recherches (cours ou internet) pour voir comment on remplit une liste python.

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 11:33

1) J'ai testé la variable pour n = 2, je trouve ainsi 678,96 degrés c'est en effet plus précis.
Donc pour cette question ci on est bon ?

2) Le problème c'est que je n'ai pas de cours sur python donc pour créer une liste je ne sais pas trop comment m'y prendre j'ai regardé des vidéos pour les listes mais ça reste le flou
Tn+1 = 0.86 * Tn + 3.6 ?
On cherche la liste L des températures
L=[T] ?
je ne comprend pas trop comment m'y prendre..
Pouvez vous m'éclairer sur le début du programme ?

Posté par
carita
re : Les suites et langage python 23-03-22 à 12:34

la définition par récurrence de la suite de l'énoncé est :
T0 = 1000
Tn+1 = 0.82 * Tn + 3.6


---

1) pour n = 2, je trouve ainsi 678,96 degrés  oui

avant de passer à la question 2, je pense qu'il est nécessaire d'approfondir le script de la 1) :
j'ai l'impression que tu n'as pas bien saisi le fonctionnement de l'instruction for

l'instruction for i in range (n):  génère une boucle qui va s'exécuter plusieurs fois.

==> la variable i (compteur) va prendre successivement les valeurs 0, puis 1, puis 2.... jusqu'à n-1.

ex : si tu tapes n = 2 en entrée, la variable i prendra les valeurs 0, puis 1, c'est-à-dire que la boucle 'tournera' deux fois (ce que tu souhaites)
et à chaque fois (= à chaque itération) , la variable T prendra la valeur d'un terme de la suite qui viendra écraser/remplacer l'ancienne valeur contenue dans T.

il est essentiel de bien comprendre que la variable T (qui n'est pas une liste), ne peut contenir qu'une seule valeur à la fois.

je déroule le script comme la machine va le faire :

T = 1000               ---- T contient 1000, ce qui correspond à T0
n= int(input("n="))   --- par ex, on saisit n=2

for i in range (n):     ----  1er tour de boucle : au début i= 0
       T = 0.82 * T + 3.6    ---- T contient à présent 823.6, ce qui correspond à T1

for i in range (n):     ----  2er tour de boucle : i= 1
       T = 0.82 * T + 3.6    ---- T contient à présent 678.952, ce qui correspond à T2

print(T)  ---- on sort de la boucle (indentation) et on affiche donc la (dernière) valeur de T, soit 678.952


pour t'en convaincre, fais la petite modif suivante dans ton script, et fais tourner pour n=4 :

T = 1000
n= int(input("n="))

for i in range (n):
       T = 0.82 * T + 3.6
        print(T)
  
on fait rentrer le print(T) dans la boucle grâce à l'indentation :
on constate alors que les termes T1, T2, T3 et T4 s'affichent tous (et sont donc calculés!)

en affichage, tu obtiens :
823.6
678.952
560.34064
463.0793248


---

on devine donc que pour répondre à la question 2), il va suffire de récupérer les termes calculés au fur et à mesure,
et les écrire dans la variable liste L.

un exemple de liste python :    ma_liste = [1,2,3,4,5]  
cette liste contient 5 éléments, et on peut en rajouter avec l'instruction :  ma_liste.append(6)
la liste modifiée devient : ma_liste = [1,2,3,4,5,6]  

en résumé (farfouille sur les messages précédents si besoin):
- définir la fonction et lui donner un nom
- créer la liste L et l'initialiser
- reprendre la script de la 1) et y insérer une nouvelle instruction qui va rajouter un élément dans la liste L.

fais une proposition de script pour la 2)

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 15:38

Merci pour vos explications détaillées de la question 1.

2) Mais du coup on garde notre programme de la question 1 et à la suite on définie la fonction et la liste ou alors on met le programme a la fin ?
def température (heures):
je ne trouve pas la fonction..
l=[1000,823.6,678.952,564.34064,463.0793248]
l.append(??)
print(l)

Posté par
carita
re : Les suites et langage python 23-03-22 à 16:15

2)
bon... je te donne une pré-version à trous ...? à compléter; on la peaufinera ensuite.

(les phrases qui commencent par # sont des commentaires qui seront ignorés par python.)


# définition de la fonction température
def temperature(n):
    T = ...?
    L = []
    for i in range (...?):
       T = 0.82 * T + 3.6
       L.append( ...?)
    return  ...?
    
# corps principal du programme
n= int(input("saisir le nombre d'heures : "))
print(temperature(n))   


- complète les trous
- saisis le script et fais le tourner pour n=4, par exemple; qu'obtiens-tu ?
- relis  attentivement la question posée dans l'énoncé, et explique ce qui manque pour y répondre exactement;
quelle modification doit-on apporter ?

si tu ne comprends pas l'utilité de certaines lignes, dis-le.

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 17:22

Ok merci beaucoup..

def temperature(n):
    T = 1000
    L = []
    for i in range (n):
       T = 0.82 * T + 3.6
       L.append(n)
return(T)?
je ne comprend pas trop la ligne return, cela veut dire quelle nous donne la température en fait ?
pour n = 4 je trouve 463,0793....
pour y répondre il nous faut définir la liste L=[] car la on a qu'une seule valeur de température pour une heure précise alors que nous on veut la liste des températures en fonction des heures

Posté par
carita
re : Les suites et langage python 23-03-22 à 18:00

def temperature(n):
    T = 1000  
    L = []
    for i in range (n):
       T = 0.82 * T + 3.6
       L.append(n)     --- non, quel nouvel élément on veut rajouter dans notre liste ? le terme de la suite qui vient juste d'être calculé.
Donc, le contenu de quelle variable ? ce n'est pas n...

       return(T) ----  non plus : on veut que la fonction retourne une liste de tous les termes de la suite, donc c'est la variable....?

l'instruction return  : elle renvoie (=retourne) le contenu de la variable que tu lui indiques.
si tu écris return(T), tu renvoies le contenu de la variable T, mais pas la liste que tu as construite...

et attention dans la saisie de ton script de bien respecter l'indentation pour le return.

corrige ces 2 erreurs, puis teste à nouveau ton script

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 18:51

def temperature(n):
    T = 1000
    L = []
    for i in range (n):
       T = 0.82 * T + 3.6
       L.append( T)   ??
    return (L)

Pour return ca me le met en rouge dans python..

Posté par
carita
re : Les suites et langage python 23-03-22 à 18:56

return : sans doute un problème d'indentation.

sinon c'est bien les corrections attendues : à chaque tour de boucle, on ajoute dans la liste L la valeur de T que l'on vient de calculer.

et à la fin, on renvoie la liste L ainsi complétée.

# définition de la fonction température
def temperature(n):
    T = 1000
    L = []
    for i in range (n):
       T = 0.82 * T + 3.6
       L.append(T)
    return  L
    
# corps principal du programme
n= int(input("saisir le nombre d'heures : "))
print(temperature(n))  


fais tourner le script
dis moi ce que tu obtiens, et ce qu'il manque.

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 18:56

J'ai re essayé après mon message dans python

Les suites et langage python

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 18:58

Il manque quelque chose ?
Et j'obtiens bien une liste de températures

Posté par
carita
re : Les suites et langage python 23-03-22 à 18:59

observe ta liste, il manque pas le 1er terme ?

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 19:00

Ah si !
Il faut que je mette quelque part T = 1000 ?

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 19:02

Euh non puisqu'il y a déjà T = 1000
Peut-être rajouter quelque chose dans les crochets de L=[] ?

Posté par
carita
re : Les suites et langage python 23-03-22 à 19:05

il faut initialiser la liste L, non pas à vide, comme on l'a fait, mais avec la 1ère valeur de T.

donc remplacer L = []
par  L = [T]

---

dernière modif possible : tu constates que les températures sont données avec trop de précision décimale (inutile)

on peut (pas obligatoire), remplacer  L.append(T)
par L.append(round(T,2))
... quelle différence tu constates à l'affichage  ?

3) tu peux à présent compléter le tableau

Posté par
carita
re : Les suites et langage python 23-03-22 à 19:05

emmaa2 @ 23-03-2022 à 19:02

Euh non puisqu'il y a déjà T = 1000
Peut-être rajouter quelque chose dans les crochets de L=[] ?

messages croisés
oui, bien vu

Posté par
carita
re : Les suites et langage python 23-03-22 à 19:06

j'avance un peu pour la 4)  Écrire un programme en langage Python qui calcule et affiche le nombre d'heures nécessaire d'attente pour pouvoir ouvrir la porte du four sans risque pour les céramiques.

sur ta proposition de départ :  en gros, tu as compris ce qu'il faut faire, plusieurs lignes sont à conserver.
mais il y a des erreurs, dont certaines que tu peux corriger seule à présent :
- initialisation de T
- inutilité de la variable u
- syntaxe du while : manque les ":" à la fin, et revoir l'indentation de ce qui est dans la boucle
- la condition "<70" n'est pas correcte
...
propose et teste un nouveau script.

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 19:13

C'est fait, merci bcp
Je vous envoie par image comme précédemment
On remarque qu'on a plus que deux chiffres après la virgule donc T2 arrondi au centième près.
Puis bien sûr la suite est décroissante.
Le tableau :
n         0            1                2                 3                4             5                     10          20
T    1000   823.6    678.95    560.34    463.08    383.33       154.7   38.51

Les suites et langage python

Posté par
carita
re : Les suites et langage python 23-03-22 à 19:17

ok
ton tableau :
- attention on te demande d'arrondir à l'entier le plus proche

- question :  il y a pas des pointillés pour compléter entre 5 et 10 et 20 ?

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 19:23

Non je dois juste donner pour 1,2,3,4,5,10 et 20 heures dans mon exercice

n         0          1          2          3          4         5         10         20
T    1000   824    679    560   463    383     155     39

4) donc maintenant quand on va lancer le script on va voir s'afficher un nombre n d'heures qui donnera une température égale ou inférieure à 70 degrés
Je garde ma boucle while ?
Et j'efface les programmes d'avant ou je peux les laisse ?

Posté par
carita
re : Les suites et langage python 23-03-22 à 19:27

ok pour 3)

4) oui while est très bien dans ce cas, car on ne sait pas combien d'itération on devra faire dans la boucle.

pas besoin de définir une fonction ici.
pars de ce que tu avais fait (au tout début) mais en corrigeant copieusement  
cf mon message de 19h06

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 19:41

Si la condition <70 n'est pas correcte, que faut t-il mettre ?
car tant que le four n'est pas à 70 degrés on ouvre pas le four
Je vous envoie où j'en suis, je sais que c'est faux
Il faut sans doute definir n non ?

Les suites et langage python

Posté par
carita
re : Les suites et langage python 23-03-22 à 19:45

Si la condition <70 n'est pas correcte, que faut t-il mettre ?
car tant que le four n'est pas à 70 degrés on ouvre pas le four


mais oui, justement ! formule-le autrement :
on continue à engrener les heures (= à faire tourner la boucle) tant que ......???? (complète)

Il faut sans doute definir n non ?  oui, bien sur, comme tu avais fait au début.

en revanche, ta 2ème ligne ne sert à rien, et surtout elle fausserait le résultat...

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 19:59

J'avoue que je bloque.. je vois comment y mener en "français" mais pour y transformer en langage python je n'y arrive pas

Les suites et langage python

Posté par
carita
re : Les suites et langage python 23-03-22 à 20:02

on continue à calculer les termes successifs de la suite tant que la température est supérieure à 70 , donc T>70,
et non pas <70 : en effet, quand on arrive au-dessous de 70, on sort de  la boucle et c'est terminé.
tu vois ?
corrige, saisis le script :
qu'obtiens tu en sortie (inutile de me redonner la photo)

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 20:04

Ahhh oui je vois
J'ai corrigé et j'ai obtenu 15
On doit donc attendre 15 heures pour ouvrir le four sans risques

Posté par
carita
re : Les suites et langage python 23-03-22 à 20:05

super

Posté par
carita
re : Les suites et langage python 23-03-22 à 20:10

pour la partie B, dis moi tout ce que tu as su faire, ou essayé de faire.
je vais m'absenter et je reviens te lire.
a+

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 20:10

Maintenant pour la 5)
La suite est décroissante, elle n'est ni arithmétique ni géométrique non ?

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 20:22

pas de souci, pour la 5 c'est cela ?

partie b
1) On à la suite (Un) définie par Un = Tn - 20
On calcule les premiers termes
U₀= T₀ - 20 = 1000 - 20 = 980
U₁ = T₁ - 20 = 824 - 20 = 804
u₂ = T₂ - 20 = 679 - 20 = 659
Cette suite semble ainsi décroissante et est arithmétique de raison r = -20

2) Pour démontrer qu'une suite est arithmétique, on utilise la formule Un₊₁ - Un et il faudra trouver un nombre entier qui sera la raison ?

Posté par
carita
re : Les suites et langage python 23-03-22 à 20:59

5) La suite est décroissante, en effet.

pour montrer que la suite (Tn) n'est ni arithmétique ni géométrique, tu peux utiliser les premiers termes calculés précédemment.
ou
citer les formes de définition par récurrence de ces 2 types de suites (cf cours)
et comparer la définition récurrente  de  (Tn)  : T0 = 1000,   Tn+1 = 0.82 * Tn + 3.6.

comme tu veux.
---

partie b
1) On à la suite (Un) définie par Un = Tn - 20
On calcule les premiers termes
U₀= T₀ - 20 = 1000 - 20 = 980
U₁ = T₁ - 20 = 824 - 20 = 804
u₂ = T₂ - 20 = 679 - 20 = 659  ---- attention, là tu arrondis, mais normalement les termes de  (Tn) et donc de  (Un) ne sont pas des entiers !

arithmétique de raison r = -20 --- ah bon ? tu passes d'un terme à l'autre en soustrayant 20 ?

pour quelle date tu dois rendre ce devoir ?

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 21:11

La suite était arithmético géométrique non ? pour la partie A

Oui j'ai arrondi car j'ai repris les résultats pour le tableau, je le préciserai dans ma copie
Arithmétique de raison r = 20 alors ?
Je dois le rendre pour lundi 28 mars

Posté par
carita
re : Les suites et langage python 23-03-22 à 21:20

La suite était arithmético géométrique non ? pour la partie A  --- tout à fait
peut-être en as-tu déjà étudié en classe, sous forme d'exercice.
si c'est le cas, tu pourras te servir de la méthode vue en classe : la procédure (et les questions) est quasiment toujours identique.


Arithmétique de raison r = 20 alors ?  --- non ni arithmétique ni raison 20, ni -20
regarde les 1ers termes arrondis : 980, 804, 659...
804-980 659-804 -20  donc pas arithmétique.

... essaie géométrique pour voir
et surtout prends les valeurs exactes des 3 premiers termes, pas les arrondis.

ok lundi 28, ça nous laisse qq jours.
si tu veux bien , on y reviendra demain, je souhaiterais couper pour aujourd'hui.

Posté par
carita
re : Les suites et langage python 23-03-22 à 21:23

... bien sûr, je laisse la main à qui est disponible pour t'accompagner.

à défaut, je reviendrai te lire demain.
bonne soirée

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 21:25

Oui pas de soucis on reprend cela demain
Bonne soirée à toi et merci encore, a demain

Posté par
emmaa2
re : Les suites et langage python 23-03-22 à 21:32

Si je prend les valeurs exactes
1000   823.6    678.95    560.34

La suite semble géométrique de raison q = 1,21
On peut vérifier en faisant 1000/823,6 qui donne 1,21 et 823,6/678,95 qui donne aussi 1,21
Ou alors je crois que pour démonter qu'une suite est géométrique de façon plus "mathématiques" on peut aussi monter que Un+1 / Un est égal à un nombre ou que Un+ = Un x nb

Posté par
carita
re : Les suites et langage python 24-03-22 à 08:57

bonjour,
je copie-colle ici l'énoncé de la partie B pour en faciliter l'accès.

Partie B = Avec une formule explicite.
On considère la suite (𝑈𝑛) définie pour tout 𝑛 entier naturel par : 𝑈𝑛 = 𝑇𝑛 − 20.
1) Calcule les premiers termes de cette suite et émettre une conjecture sur la nature de cette suite.
2) Démontrer cette conjecture.
3) Pour tout 𝑛 entier naturel, exprimer 𝑈𝑛 en fonction de 𝑛 puis en déduire 𝑇𝑛 en fonction de 𝑛.
4) Vérifier les résultats obtenus dans la partie A en utilisant cette dernière formule.


1) conjecture sur la nature de la suite (𝑈𝑛) : géométrique, oui.
mais erreur sur sa raison. (si tu ne vois pas pourquoi, faisons la 2), puis tu reviendras à la 1).

2) démonstration
pour démonter qu'une suite est géométrique, on peut montrer que Un+1 / Un=q, ou que Un+1 = Un * q  ---  avec q, nombre réel non nul.  
oui

on préfèrera ici la seconde méthode (entre autres raisons, parce que l'on ne sait a priori pas si Un peut être nul (déno nul interdit)

donc, partir de Un+1 = ………. et chercher à arriver à une forme q * Un

3)Pour tout 𝑛 entier naturel, exprimer 𝑈𝑛 en fonction de 𝑛 ---- cf cours pour formule explicite (ou terme général) d'une suite géométrique

à toi !

Posté par
emmaa2
re : Les suites et langage python 24-03-22 à 20:25

Bonjour

1)

2) On cherche à démontrer que la suite (Un) est géométrique.
Pour cela on va calculer Un+1 = Un x q
Ainsi pour tout , on a:
Un = Tn - 20
Donc Un+1 = Tn+1 - 20
Un+1 = 0.82 x  Tn + 3.6 - 20
Un+1 = 0.82 x Tn - 16.4
Un+1 = 0.82 ( Tn - 20 )
Un+1 = 0.82 x Un
Donc pour tout Un+1 = 0.82 x Un
Donc la suite est bien géométrique, car elle est de la forme Un+1 = Un x q. Elle à pour raison q = 0.82 et son premier terme Uo est = 0.82 x Un = 0.82 x To - 20 = 800. Est-ce normal que je ne trouve pas le même premier terme Uo que pour la 1) ou je trouve 980...?
Du coup pour la 1) ce n'est pas grave si je n'indique pas sa raison ? puisque je l'ai calculé dans la question d'après.

3) On exprime Un en fonction de n :
Pour tout , on a
Un = Uo x qⁿ
Un = 800 x 0.85ⁿ
On exprime Tn en fonction de n
Pour tout , on a
Tn = To x qⁿ
Tn = 1000 x 0.82ⁿ ?

Posté par
carita
re : Les suites et langage python 24-03-22 à 20:52

bonsoir emmaa2

bravo, tu t'en es bien sortie !
je signale en rouge juste ce qui ne va pas dans les réponses .


2) On cherche à démontrer que la suite (Un) est géométrique.
Pour cela, on va calculerchercher à démontrer que pour tout n,  Un+1 = Un x q
...
et son premier terme Uo est = 0.82 x Un
==> Un = Tn - 20   donc U0 = T0 - 20  = ...?

pour la 1) ton erreur provient que tu as établi les rapports Un/Un+1 au lieu de Un+1/Un
en effet, quand tu écris Un+1 = Un x q, c'est équivalent à Un+1 / Un = q
reprends la 1), ce serait dommage de zapper une partie de la réponse attendue


3) ...
Un = Uox qⁿ  
Un = 800 x 0.85ⁿ    --- en rouge, à corriger

On exprime Tn en fonction de n:
Tn = To x qⁿ --- faux, tu as dit toi-même que la suite (Tn) n'est pas géométrique.

on fait :
Un = Tn - 20  équivalent à
Tn = Un + 20
Tn = .... l'expression explicite de Un trouvée ci-dessus...  + 20

Posté par
carita
re : Les suites et langage python 24-03-22 à 20:56

j'ai oublié les....
  Pour tout , on a  ---- que vient faire Z ici ?

Posté par
emmaa2
re : Les suites et langage python 24-03-22 à 21:24


Je comprend pas où je me suis trompée dans la suite quand vous me dites pour la 1) ton erreur provient que tu as établi les rapports Un/Un+1 au lieu de Un+1/Un
en effet, quand tu écris Un+1 = Un x q, c'est équivalent à Un+1 / Un = q
reprends la 1), ce serait dommage de zapper une partie de la réponse attendue


2) Uo = To - 20 , = 1000 - 20 = 980

3) Un = Uo x qⁿ
Un = 980 x 0.82ⁿ ?

Ah oui Tn est arithmético géométrique donc elle vaut :
Un = Tn - 20  équivalent à
Tn = Uo x qⁿ + 20
Et pour les Z je n'ai pas fais exprès je voulais mettre des N, faute d'inattention de ma part

Posté par
emmaa2
re : Les suites et langage python 24-03-22 à 21:29

Ah si j'ai compris mon erreur !! Je vois il fallait faire 823.6 / 1000 et non l'inverse pour trouver 0.82 !

Posté par
carita
re : Les suites et langage python 25-03-22 à 09:09

bonjour emmaa2

d'accord avec tes réponses, mais ne laisse pas la 3) inachevée
Tn = 980 * 0.82ⁿ + 20

4) Vérifier les résultats obtenus dans la partie A en utilisant cette dernière formule.
la formulation de cette question me laisse un peu perplexe...

faisons un petit tour d'horizon des résultats de la partie A à vérifier en partie B

1.Programmer cet algorithme en langage  Python.
Tester l'algorithme (donner deux exemples de résultats) --- l'as-tu fait ?
peut-être suffit-il de calculer les 2 termes choisis en exemple, mais avec la formule explicite du B3)

2. Écrire une fonction L en langage Python qui à partir d'un nombre entier naturel 𝑛 retourne la liste des températures du four entre 0 et 𝑛 heures.
... faut-il carrément reprendre le script et y utiliser la formule explicite  ?
tu as possibilité de demander un éclaircissement  à ton professeur  ?

3. Remplir le tableau suivant (arrondir à l'entier le plus proche) :  là, c'est clair ! vérifier le tableau  

4) Écrire un programme en langage Python qui calcule et affiche le nombre d'heures nécessaire d'attente pour pouvoir ouvrir la porte du four sans risque pour les céramiques.
résoudre l'inéquation Tn < 70  

5) Émettre des conjectures sur le comportement de cette suite.
dans le flot des questions, j'ai un peu négligé celle-ci.
tu dois conjecturer (en partie A) :
- sa variation : fait, décroissante
- et sa limite lorsque n tend vers de "grandes" valeurs --- il me semble que tu ne l'as pas fait.
parler de sa nature (arithmético-géométrique) n'est pas demandé ici.

en partie B, utiliser Tn = 980 * 0.82ⁿ + 20  pour vérifier ces 2 points .

Posté par
emmaa2
re : Les suites et langage python 25-03-22 à 15:50

Bonjour

4)
Pour la 1) de la partie A non en effet je n'avais pas donner deux exemples de résultats, donc les voici:
On vérifie les premiers termes de la suite Tn de la partie A avec la formule explicite Tn = U₀ x qⁿ + 20
T₀ = 980 x 0.82⁰ + 20 = 1000 degrés
T₁ = 980 x 0.82¹ + 20 = 823.6 degrés
T₂ = 980 x 0.82² + 20 = 678.952 degrés
Donc les résultats de la partie sont vérifiés avec la formule et sont justes.

Pour la 2) je ne sais pas.. je viens de lui demander et je vous dit dès que j'ai une réponse.

3) J'ai vérifié toutes les valeurs du tableau, et c'est ok, elles correspondent toutes!

4) Il faut résoudre l'équation Tn < 70, comment savoir qu'il faut faire cela pour vérifier le résultat ? Et est-ce normal que ce soit Tn < 70 alors que pour cette question on avait mis Tn > 70 ?
J'essaye de résoudre quand même:
Tn < 70
U₀ x qⁿ + 20 < 70
980 x 0.82ⁿ + 20 < 70
980 x 0.82ⁿ < 50
ensuite euh.. on divise par 980 ?
0.82ⁿ < 0.051 ?
Et après je ne sais pas.. comme il y a une puissance ⁿ

5) Oui, la suite était décroissante.
Pour le démonter, on calcule simplement les premiers termes et on regarde ce qu'il se passe :
On a Tn = 980 x 0.82ⁿ + 20
Donc j'ai juste à reprendre les résultats de la question 1
T₀ = 980 x 0.82⁰ + 20 = 1000 degrés
T₁ = 980 x 0.82¹ + 20 = 823.6 degrés
T₂ = 980 x 0.82² + 20 = 678.952 degrés
La suite est bien décroissante.

Pour étudier sa limite
Donc dans la question 5 de la partie A je vais devoir la modifier et dire qu'en plus d'être décroissante elle semble avoir une limite ?
Donc je dois conjecturer cela sous cette forme ?
lim un = ?
n+
Ainsi, pour rester dans la question 5, comme la raison q = 0.82ⁿ
0 q < 1 donc d'après mon cours quand la raison est comprise entre 0 et 1, la limite est 0, lim(qⁿ) = 0  ?
Je ne sais pas si c'est cela "conjecturer"
Mais maintenant que c'est fait, pour la 4) de la partie B, il faut vérifier cette conjecture
Et bien comme la suite est décroissante, elle semble bien tendre vers 0, et n'iras pas en dessous car c'est un four.. je ne sais pas forcément comme l'expliquer "mathématiquement"

1 2 +




Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !