Fonction dichotomie Python
Fermé
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
-
27 févr. 2015 à 21:59
Utilisateur anonyme - 28 avril 2015 à 18:52
Utilisateur anonyme - 28 avril 2015 à 18:52
bonjour !!
je dois écrire un programme en python et je galère car je ne suis pas très forte en informatique...
voici la consigne....
Écrire une fonction dichot(a,b,f) qui prend en entrée deux réels a < b et une fonction f tels que f(a)f(b) < 0, et qui retourne deux réels a0,b0 vérifiant a ? a0 < b0 ? b tels que f(a)f(a0)>0,f(b)f(b0)>0etb0?a0 minimal.
Cette fonction procèdera par répétition de dichotomie : selon le signe de f (c) où c = (a + b)/2, elle remplace a ou b par c.
pourriez vous m'aider à écrire le programme ?
je vous remercie
je dois écrire un programme en python et je galère car je ne suis pas très forte en informatique...
voici la consigne....
Écrire une fonction dichot(a,b,f) qui prend en entrée deux réels a < b et une fonction f tels que f(a)f(b) < 0, et qui retourne deux réels a0,b0 vérifiant a ? a0 < b0 ? b tels que f(a)f(a0)>0,f(b)f(b0)>0etb0?a0 minimal.
Cette fonction procèdera par répétition de dichotomie : selon le signe de f (c) où c = (a + b)/2, elle remplace a ou b par c.
pourriez vous m'aider à écrire le programme ?
je vous remercie
A voir également:
- Fonction dichotomie Python
- Fonction si et - Guide
- Citizen code python avis - Accueil - Outils
- Fonction moyenne excel - Guide
- Fonction miroir - Guide
- Fonction somme excel - Guide
8 réponses
dsy73
Messages postés
9252
Date d'inscription
dimanche 22 août 2010
Statut
Contributeur
Dernière intervention
23 octobre 2020
2 485
28 févr. 2015 à 08:10
28 févr. 2015 à 08:10
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
28 févr. 2015 à 08:43
28 févr. 2015 à 08:43
d'accord je comprends.
je vous dit ce que j'ai mais après vous me laisser pas tomber s'il vous plait parce que j'ai vraiment besoin d'aide.
def dichot(a,b,f):
while b-a>f:
t=(a+b)/2,0
if f(a)*f(t)<0:
b=t
else
a=t
print (a,b)
voila mercii
je vous dit ce que j'ai mais après vous me laisser pas tomber s'il vous plait parce que j'ai vraiment besoin d'aide.
def dichot(a,b,f):
while b-a>f:
t=(a+b)/2,0
if f(a)*f(t)<0:
b=t
else
a=t
print (a,b)
voila mercii
dsy73
Messages postés
9252
Date d'inscription
dimanche 22 août 2010
Statut
Contributeur
Dernière intervention
23 octobre 2020
2 485
28 févr. 2015 à 09:24
28 févr. 2015 à 09:24
Encore une fois https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
Il faut tout lire, c'est comme les devoirs ;)
Il faut tout lire, c'est comme les devoirs ;)
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
28 févr. 2015 à 09:38
28 févr. 2015 à 09:38
defdichot(a,b,f):
.....
whileb-a>f:
.....t=(a+b)/2,0
.....
iff(a)*f(t)<0:
............b=t
.....
else:
............a=t
voila j espère que c'est bon maintenant :)
dsy73
Messages postés
9252
Date d'inscription
dimanche 22 août 2010
Statut
Contributeur
Dernière intervention
23 octobre 2020
2 485
28 févr. 2015 à 19:09
28 févr. 2015 à 19:09
Soit j'ai raté qqchose soit tu ne veux pas lire :
"Détaillez précisément le ou les point(s) qui vous pose(nt) un problème dans votre exercice."
"Si un message d'erreur apparait, recopiez-le en intégralité, précisez la ligne ou il apparait et le contenu des variables."
De plus je crois que l'énoncé a un problème de format.
"Détaillez précisément le ou les point(s) qui vous pose(nt) un problème dans votre exercice."
"Si un message d'erreur apparait, recopiez-le en intégralité, précisez la ligne ou il apparait et le contenu des variables."
De plus je crois que l'énoncé a un problème de format.
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
28 févr. 2015 à 19:57
28 févr. 2015 à 19:57
Tout d'abord, merci pour ton aide.
Revoici l'énoncé :
Écrire une fonction dichot(a,b,f) qui prend en entrée deux réels a < b et une fonction f tels que f(a)f(b) < 0, et qui retourne deux réels a0,b0 vérifiant a ? a0 < b0 ? b tels que f(a)f(a0)>0,f(b)f(b0)>0etb0?a0 minimal.
Cette fonction procèdera par répétition de dichotomie : selon le signe de f (c) où c = (a + b)/2, elle remplace a ou b par c.
Bon je vais cibler plus mon problème.
J'ai casi écrit tout le code il ne me manque plus qu'une ligne à écrie.
celle ci consiste à dire "tant que il existe un x tel que a<x<b et que f(x) différent de 0 alors..."
je sais qu'il faut utiliser while le problème c'est que je ne sais pas comment traduire "il existe un x tel que" j'ai pensé à utiliser la fonction range seulement je ne veut pas me limiter à des valeurs entières...`
pouvez vous m'aider ?
merci
Revoici l'énoncé :
Écrire une fonction dichot(a,b,f) qui prend en entrée deux réels a < b et une fonction f tels que f(a)f(b) < 0, et qui retourne deux réels a0,b0 vérifiant a ? a0 < b0 ? b tels que f(a)f(a0)>0,f(b)f(b0)>0etb0?a0 minimal.
Cette fonction procèdera par répétition de dichotomie : selon le signe de f (c) où c = (a + b)/2, elle remplace a ou b par c.
Bon je vais cibler plus mon problème.
J'ai casi écrit tout le code il ne me manque plus qu'une ligne à écrie.
celle ci consiste à dire "tant que il existe un x tel que a<x<b et que f(x) différent de 0 alors..."
je sais qu'il faut utiliser while le problème c'est que je ne sais pas comment traduire "il existe un x tel que" j'ai pensé à utiliser la fonction range seulement je ne veut pas me limiter à des valeurs entières...`
pouvez vous m'aider ?
merci
dsy73
Messages postés
9252
Date d'inscription
dimanche 22 août 2010
Statut
Contributeur
Dernière intervention
23 octobre 2020
2 485
28 févr. 2015 à 22:18
28 févr. 2015 à 22:18
Non je ne peux pas t'aider. Je n'arrive pas à comprendre l'énoncé que tu as inscris.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
28 févr. 2015 à 22:14
28 févr. 2015 à 22:14
ou t'ou simplement un moyen de trouver le maximum d'une fonction dans un intervalle (a,b)
mais je ne sais pas le programmer
mais je ne sais pas le programmer
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
28 févr. 2015 à 22:22
28 févr. 2015 à 22:22
l'ennoncé est clair pourtant je ne l'ai pas inventé et je l'ai recopié mot à mot. il faut voir ça en quelque sorte comme le théorèmes des valeurs intermédiaires.
en gros vous m'avez demandé plein de choses. j'ai fait de mon mieux pour répondre à vos attentes et à celle du forum pour au final recevoir aucune aide.
en gros vous m'avez demandé plein de choses. j'ai fait de mon mieux pour répondre à vos attentes et à celle du forum pour au final recevoir aucune aide.
dsy73
Messages postés
9252
Date d'inscription
dimanche 22 août 2010
Statut
Contributeur
Dernière intervention
23 octobre 2020
2 485
28 févr. 2015 à 22:39
28 févr. 2015 à 22:39
Que comprends tu de cet extrait de l'énoncé ?
deux réels a0,b0 vérifiant a ? a0 < b0 ? b tels que f(a)f(a0)>0,f(b)f(b0)>0etb0?a0 minimal
deux réels a0,b0 vérifiant a ? a0 < b0 ? b tels que f(a)f(a0)>0,f(b)f(b0)>0etb0?a0 minimal
carryPAR
Messages postés
8
Date d'inscription
vendredi 27 février 2015
Statut
Membre
Dernière intervention
1 mars 2015
28 févr. 2015 à 22:44
28 févr. 2015 à 22:44
Autant pour moi il y a eu un problème de format:
j'espère que maintenant ça sera lisible
Écrire une fonction dichot(a,b,f) qui prend en entrée deux réels a < b et une fonction f tels que f(a)f(b) < 0, et qui retourne deux réels a0,b0 vérifiant a < a0 < b0 < b tels que f(a)f(a0)>0,f(b)f(b0)>0 et b0-a0 minimal.
Cette fonction procèdera par répétition de dichotomie : selon le signe de f (c) où c = (a + b)/2, elle remplace a ou b par c.
j'espère que maintenant ça sera lisible
Écrire une fonction dichot(a,b,f) qui prend en entrée deux réels a < b et une fonction f tels que f(a)f(b) < 0, et qui retourne deux réels a0,b0 vérifiant a < a0 < b0 < b tels que f(a)f(a0)>0,f(b)f(b0)>0 et b0-a0 minimal.
Cette fonction procèdera par répétition de dichotomie : selon le signe de f (c) où c = (a + b)/2, elle remplace a ou b par c.
Utilisateur anonyme
28 avril 2015 à 18:52
28 avril 2015 à 18:52
Salut,
Est-ce que, déjà, tu comprends la méthode de la dichotomie ?
Est-ce que, déjà, tu comprends la méthode de la dichotomie ?