Page 1 sur 2

algorithme

Posté : ven. 17 janv. 2014 18:56
par youna
bonjour, je ne comprends pas cette algorithme ainsi que quelques questions.

On évalue l'isolation thermique d'une station d'étude au Pôle Nord, on a élaboré un modèle dans lequel la température en dégrès C, du local est donnée en fonction du temps (heures) par f(t)=19e^-0.21t. On essaye de terminer au bout de combien de temps la température passera sous la barre des 10°C à l'intèrieur de la station.

1. Quelle est à la température intiale dans la station.
f(0)=19e^-0.21*0=19

l'équation f(t)=10 admet une unique solution dans l'intervalle [2;4]

2. Voici un algorithme :
Algorithme : température
Variables : a,b,p,t nombres réels
Début : saisirr p
a prend la valeur 2
b prend la valeur 4
tant que (b-a supérieur à p)
t rend la valeur (a+b)/2
si (19e^-0.21t inférieur à 10)
alors
b prend la valeur de t
sinon
a prend la valeur de t
fin du si
fin du tant que
affixer a,b
fin

Quel est le role de cet algorithme ? quel est le role de la variable p ?

merci d'avance car je n'arrive pas cette question

Re: algorithme

Posté : ven. 17 janv. 2014 19:12
par sos-math(21)
Bonsoir,
C'est un algorithme très utile en maths qui utilise un procédé permettant de calculer un encadrement d'une solution d'équation à la précision que l'on veut (ici p).
ici on veut résoudre f(t)=10, c'est-à-dire trouver un encadrement du nombre t qui a pour image 10.
Algorithme : température
Variables : a,b,p,t nombres réels : a et b sont des bornes qui vont varier
Début : saisir p : la précision de ton encadrement desolution : 0,1, 0,01....
a prend la valeur 2
b prend la valeur 4
tant que (b-a supérieur à p) tant que les bornes ne se sont pas assez près (il faut qu'elles soient à une distance l'une de l'autre inférieure à p), on continue
t rend la valeur (a+b)/2 on prend le centre de l'intervalle
si (19e^-0.21t inférieur à 10) on calcule l'image de ce centre par la fonction et si l'image est inférieure à 10 cela signifie que la solution est située entre la borne de gauche et le centre (car la fonction f est décroissante)
donc dans ce cas, le centre devient la borne de droite et la borne de gauche ne bouge pas.
Si ce n'est pas le cas, cela signifie que la solution est entre le centre et la borne de droite donc le centre devient la borne de gauche et la borne de droite
ne bouge pas. En travaillant comme cela on construit une suite d'intervalles qui contiennent la solution et qui ont une amplitude qui est divisée par deux à
chaque boucle
alors
b prend la valeur de t

sinon
a prend la valeur de t
fin du si
fin du tant que
affixer a,b Une fois que la longueur de l'intervalle a atteint la précision demandée, on affiche les bornes de cet intervalle.
fin
Est-ce plus clair ?

Re: algorithme

Posté : ven. 17 janv. 2014 20:53
par youna
merci beaucoup donc p represente le nombre auquel on cherche un encadrement?

Re: algorithme

Posté : ven. 17 janv. 2014 21:02
par sos-math(21)
Oui, p représente la précision de ton encadrement.
Si on note \(\alpha\) le nombre tel que \(f(\alpha)=10\) et si tu saisis \(p=0,01\), alors l'algorithme va te renvoyer deux nombres \(a\) et \(b\), tels que \(a<\alpha<b\), avec \(b-a\leq 0,01\) : ce sera un encadrement de \(\alpha\) au centième.
Bonne continuation

Re: algorithme

Posté : ven. 17 janv. 2014 21:17
par youna
merci j'ai compris.
je dois le programmer sur la calculatrice c'est ça ?

Prompt A,B,P,T
A->2
B->4
While B-A supérieur P
(A+B/2)->T
If 19e^-0.21*e^-0.21*T inférieur 10
Else (je sais pas si c'est ça alors)
B=T
While (sinon ?)
A=T
End
End
Disp A,B
End

Re: algorithme

Posté : ven. 17 janv. 2014 21:37
par sos-math(21)
Je te cite :
youna a écrit :merci j'ai compris.
je dois le programmer sur la calculatrice c'est ça ?

Prompt A,B,P,T A et B sont donnés dans l'énoncé au départ : donc ce n'est pas la peine de les demander, T est une variable interne à l'algorithme donc on ne l'appelle pas non plus, tu as juste à demander la précision requise
A->2
B->4
While B-A supérieur P
(A+B/2)->T ((A+B)/2)->T oubli d'une parenthèse
If 19e^-0.21*e^-0.21*T inférieur 10 , ici c'est seulement 19e^(-0.21T)<10
Else (je sais pas si c'est ça alors) : Non, le "Else" est utilisé comme deuxième alternative dans un si (c'est le sinon), il faut mettre ici un "Alors" : Then
B=T
While (sinon ?) Ici c'est "Else"
A=T
End
End
Disp A,B
End
Teste le : pour p=0,01, tu dois avoir a=

Code : Tout sélectionner

a=3.0546875
et

Code : Tout sélectionner

b=3.0625

Fait avec algobox.
Bon courage

Re: algorithme

Posté : dim. 19 janv. 2014 12:19
par youna
merci beaucoup mais quand je le programme sur ma calculatrice il me met erreur quand A est stocké en 2
je mets donc au début juste prompt T ?

Re: algorithme

Posté : dim. 19 janv. 2014 14:40
par sos-math(21)
Bonjour,
Peut-être as-tu inversé la commande ? Tu stockes 2 dans l'emplacement mémoire nommé A donc \(2 \mapsto A\).
Essaie avec cela.

Re: algorithme

Posté : lun. 20 janv. 2014 20:43
par youna
oui j'avais bien mis ça,
voici mon programme que j'ai mis :
Prompt P,T
2->A
4->B
While B-A supérieur P
((A+B)/2)->T
If 19e^-0.21*T inférieur 10
Then
B=T
Else
A=T
End
End
Disp A,B
End

ça me met toujours erreur

Re: algorithme

Posté : lun. 20 janv. 2014 21:28
par sos-math(21)
Bonsoir,
Tu n'as pas besoin d'appeler la variable T qui est interne au programme,
Prompt P
Ensuite
Tu mets P=A : il faut faire une affectation : T->A
Même chose pour P=B : il faut affecter la valeur T dans la variable B : P->B.
J'ai programmé avec ma ti voyage200 et cela marche.
Reprends bien cela avec les bonnes fonctions de la calculatrice : il faut appeler la fonction While et ne pas la taper à la main.
Même chose pour If et then et Else.
Bon courage

Re: algorithme

Posté : mer. 22 janv. 2014 15:55
par youna
j'ai réussi enfin à la programmer par contre je trouve pour p=0.1 A=2 et B=2.0325, pour p=0.01 A=2 B=2.0078125 et pour p=0.001 A=2 et B=2.000976563
ce n'est pas normale que a soit toujours égale à 2.

On me demande après au bout de combien de temps à la minute près la temperature sera inférieur à 10°C ? je dois rentrer p=0.01 alors ?

Re: algorithme

Posté : mer. 22 janv. 2014 16:01
par youna
j'ai réussi pour que les valeurs de A et B sur ma calculatrice soient les mêmes que vous.
merci

Re: algorithme

Posté : mer. 22 janv. 2014 18:30
par SoS-Math(7)
Bonne continuation et à bientôt sur SOS Math.

Re: algorithme

Posté : mer. 22 janv. 2014 21:38
par youna
Par contre j'ai une question, je dois déduire à la minute près au bout de combien de temps la température sera inférieur à 10°C, je dois rentrer pour p=0.01 ? mais comment je choisis A et B car ça dépend...
merci

Re: algorithme

Posté : jeu. 23 janv. 2014 12:56
par sos-math(21)
Bonjour,
A et B sont fixes dans ton problème donc tu ne modifies pas ces deux nombres.
Tu ne dois agir que sur p.
La variable t compte le temps en heures. Une minute, cela représente quelle fraction d'une heure ?
Réponds à cette question et tu trouveras un ordre de grandeur de la précision à demander.De toute façon, tu peux demander plus précis et multiplier par 60 pour obtenir le temps en minutes.
Bon calcul.