Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 04-12-2016 12:02:24

novice2451
Invité

probleme programmation calculatrice

Bonjours je doit réaliser un programme mais je ne sait pas comment écrire en programme:
"Quand ma fonction est inférieure a 5*10^-3
Disp X"


En fait je veut qu'elle me donne le x quand ma fonction est inferieur 5*10^-3

Merci de votre aide

#2 04-12-2016 12:30:10

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Bonjour,

Désolé...
Mais quelle fonction ?
Sur quel domaine de définition ?
Avec quel langage ? Un BASIC de calculette ? Si oui, Marque et type ?

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#3 04-12-2016 12:37:00

novice2451
Invité

Re : probleme programmation calculatrice

Bonjours et merci, ma calculatrice est une ti-82 donc language basic
La fonction est ax(e^-bx)                     La fonction e^est la fonction exponentiel
on a ici a=3,26
b=1
le domaine de definition est [0;+00[

#4 04-12-2016 15:08:25

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Re,

A l'aveugle, je n'ai pas de TI...
Prgm
puis NEW ou NOU
Donner un nom au programme. Valider
:For(A,0,100,1)
:3.26*A* 2nd LN(-A) --> B
:IF B<5*10^(-3)
:Then
:Disp A
:End


En Python, ça donne ça :


for a in range(101):
    b=3.26*a*exp(-a)
    if b<5*10**(-3):
        print (a)

J'ai demandé a entre 0 et 100 (inclus), voilà quelques sorties (les premières)
C'est toujours vrai à partir de 9...

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

2nd LN doit afficher l'exponentielle...
Je serai absent 3 bonnes heures, donc patience si ça ne marche pas.

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#5 04-12-2016 17:06:00

novice2451
Invité

Re : probleme programmation calculatrice

Bonjours ce n'est pas sa , je voudrait juste savoir a quel x la fonction descend sous les 5*10^-3 donc elle devrait me donne que un seul nombre.
cette fonction auras pour but de nous donne la valeurs a lequel un personne pourras reconduire.Ici pou cette personne a=3.26 et b=1 le but est de trouver le t
merci

#6 04-12-2016 17:16:02

novice2451
Invité

Re : probleme programmation calculatrice

La courbe ax(e^-bx)   est la courbe qui représente le taux d'alcool dans le sang et je doit crée un programme pour savoir quels la personne pourras reconduire(taux d'alcool <5*10^-3)
ici pour cette personne; a=3.26 et b=1
Et ce programme nous diras au bout de combien de temps elle peut conduire donc a quelle valeur t elle pourras conduire.

#7 04-12-2016 17:56:56

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Salut,

Déjà,
1. Tu aurais dû tester le programme et voir s'il marche : on gagnait 30 min,
2. Tu n'as pas précisé qu'il fallait arrêter le programme dès la première valeur trouvée : c'est une simple sortie de boucle.
3. Tu as ta valeur, c'est la première donnée, soit 9. Je présume qu'il s'agit de 9 h...
Je regarde la modif à faire : je pense qu'il faudra ajouter une ligne seulement ou changer de type de boucle...

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#8 04-12-2016 18:05:33

novice2451
Invité

Re : probleme programmation calculatrice

je l'ai tester mais le programme me donne 3,6 comme valeurs ce qui je pense n'est pas le bon résultat vu que pour une personne normale il faudrait environs 6heures. ,

#9 04-12-2016 18:46:07

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Re,

Alors, c'est l'instruction Stop
Donc Prgm
puis NEW ou NOU
Donner un nom au programme. Valider
:For(A,1,100,1)
:3.26*A* 2nd LN(-A) --> B
:IF B<5*10^(-3)
:Then
:Disp "Valeur cherchée :",A
:Stop
:End:
:End:

Version avec une boucle conditionnelle :
A=0
B=1
TANT que B >=5 * 10^(-3) FAIRE
....

Soit :
:0 ---> A
:1 ---> B
:While B>=5*10^(-3)
:A+1 ---> A
:3.26*A* 2nd LN(-A) --> B
:End
:Disp "Valeur cherchée",A
:End


Les deux versions en Python :

from math import exp

for a in range(1,100):
    b=3.26*a*exp(-a)
    if b<5*10**(-3):
        print("1. Valeur cherchée :",a)
        break

a,b=0,1
while b>=5*10**(-3):
    a+=1
    b=3.26*a*exp(-a)
print ("2. Valeur cherchée :",a)

Les 2 sorties :
1. Valeur cherchée : 9
2. Valeur cherchée : 9

@+

[EDIT]

je l'ai tester mais le programme me donne 3,6 comme valeurs

Il te donne deux valeurs : 3 et 6 ?
Je ne vois pas comment c'est possible : je regarde ça...

Démarre plutôt la boucle For à partir de 1 ainsi que je l'ai  écrit ci-dessus.
En effet [tex]3.26*0*e^0 = 0[/tex]
Et [tex]0<5\times 10^{-3}[/tex], la boucle se termine tout de suite : erreur de programmation la première fois.
Essaie les 2 versions et dis-moi ce qui se passe pour chacune.

Dernière modification par yoshi (04-12-2016 18:51:14)


Arx Tarpeia Capitoli proxima...

Hors ligne

#10 04-12-2016 18:55:41

novice2451
Invité

Re : probleme programmation calculatrice

Il me donne 3,6  pas 3 et 6 Merci je vais regarder

#11 04-12-2016 19:04:31

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Re,

Il me donne 3,6

Ok, alors, pourquoi as tu mis un s à valeurs ?

De plus 3,6 n'est pas une valeur possible puisque [tex]3.26xe^{-x}<1.5[/tex] quel que soit x...

Vérifie aussi si tu n'as pas tapé 3.6 au lieu de 3.26...

Il semblerait d'après ce que je vois que pour les deux versions, la dernière ligne :End soit inutile

@+

Dernière modification par yoshi (04-12-2016 19:48:27)


Arx Tarpeia Capitoli proxima...

Hors ligne

#12 04-12-2016 19:44:16

novice2451
Invité

Re : probleme programmation calculatrice

Pour ton programme je trouve une valeurs de 8,7 ce qui me semble cohérent.Mais je me demande, faut il enlever 1 car le pic d'alcool est a x=1 donc ce qui rendrait 7.7 comme valeur?

#13 04-12-2016 19:59:48

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Salut,

moi je fais avec ce qu'on me donne...
Si maintenant tu me précises que le x que tu cherches est la durée pendant lequel on doit cuver, alors, ok...
Cependant, je voudrais bien que tu me précises ce qui est dit exactement dans ton énoncé lorsqu'on donne la fonction ?

Je ne comprends pas le 8.7 vu que mon prog est censé donner des nombres entiers...
Mais, c'est juste.
J'ai vérifié avec Python...
J'ai testé aussi la précision au 10/100e (je ne pense que cela ait un sens) : 8.64...

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#14 04-12-2016 20:16:41

novice2451
Invité

Re : probleme programmation calculatrice

J'ai du oublier de préciser que cette fonction a un maximum et ce maximum est égal a 1,2 g/l qui est atteint en en X=1  grâce a ceci on trouve a=3.26 Apres il nous demande combien de temps cette dame pourra conduire que l'in doit trouver grâce a un programme.

J'ai trouver 8,7 en mettant:
A+0,1 ---> A (car c'est plus précis)

#15 04-12-2016 20:58:26

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Re,

Je me disais aussi que tu avais dû bidouiller toi-même ; c'est bien, ça prouve que tu as compris ce que je t'ai proposé et que tu n'as pas recopié servilement.
Alors, oui, il faut bien enlever 1 : il faut donc bien 7,7 h pour "cuver"...
Avec des 1/10 tu as une précision de 0,1 h soit 6 min : est-ce-que cette précision a vraiment un sens dans la vie réelle ?
L'écart entre le dosage avec 8.6 et 8.7 est de 0.0004 g/l 4 dixièmes de milligramme...

A la fin, si tu ne l'as pas fait, donc remplacer :
:Disp "Valeur cherchée",A
par
:Disp "Valeur cherchée",A-1,"h"
Si par hasard la calculette ne voulait pas du A-1
Ajouter avant, la ligne
:A-1 ---> A
Et ça passera...

Bon, c'est quand même délicat de programmer pour une calculette qu'on n'a pas : ça a marché quand même tant mieux pour toi...

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

#16 04-12-2016 21:24:36

novice2451
Invité

Re : probleme programmation calculatrice

Merci en tout cas pour l'aide que tu m'a apportés

#17 05-12-2016 18:51:19

novice2451
Invité

Re : probleme programmation calculatrice

enfin il s’avère que c'est faut et que  le resultat doit etre 3.6
et la valeurs n'est pas 5*10^-3 mais  0.5

#18 05-12-2016 19:27:02

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 947

Re : probleme programmation calculatrice

Bonsoir,

enfin il s’avère que c'est faut et que  le resultat doit etre 3.6

Pas d'accord, la preuve :
Durée : 1.0 h   alcoolémie en g/l) : 1.2
Durée : 1.1 h   alcoolémie en g/l) : 1.19
Durée : 1.2 h   alcoolémie en g/l) : 1.18
Durée : 1.3 h   alcoolémie en g/l) : 1.15
Durée : 1.4 h   alcoolémie en g/l) : 1.13
Durée : 1.5 h   alcoolémie en g/l) : 1.09
Durée : 1.6 h   alcoolémie en g/l) : 1.05
Durée : 1.7 h   alcoolémie en g/l) : 1.01
Durée : 1.8 h   alcoolémie en g/l) : 0.97
Durée : 1.9 h   alcoolémie en g/l) : 0.93
Durée : 2.0 h   alcoolémie en g/l) : 0.88
Durée : 2.1 h   alcoolémie en g/l) : 0.84
Durée : 2.2 h   alcoolémie en g/l) : 0.79
Durée : 2.3 h   alcoolémie en g/l) : 0.75
Durée : 2.4 h   alcoolémie en g/l) : 0.71
Durée : 2.5 h   alcoolémie en g/l) : 0.67
Durée : 2.6 h   alcoolémie en g/l) : 0.63
Durée : 2.7 h   alcoolémie en g/l) : 0.59
Durée : 2.8 h   alcoolémie en g/l) : 0.56
Durée : 2.9 h   alcoolémie en g/l) : 0.52
Durée : 3.0 h   alcoolémie en g/l) : 0.49

Ou alors ton 3.26 est faux, ton b est faux, bref la formule donnée  ne doit pas être la bonne...

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

Pied de page des forums