Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

Dichotomie

Posté par
foq
17-02-22 à 21:09

Bonsoirs  à tous !
J'ai besoin de votre aide si vous plaît .

Soit f la fonction définie sur [0;+[ par : f(x)= 7e^{-5x^{2}}-6 . On notera Cf la courbe représentative de f dans un repère orthonormé .

1) Déterminer la limite de f en + .

2) Étudier les variation de la fonction f sur [0;+[ .

3) Justifier que l'équation f(x)=0 admet une unique solution sur ]0;1[ .

4) On donne le pseudo- code ci-dessous  :

a0
b1
Tant que b-a>0.1
  m\frac{1}{2}*(a+b)
  Si f(m)<0
    Alors 1 m
  Sinon bm
  Fin Si
Fin Tant que

a) Faire tourner cet algorithme en complétant ci-dessous que l'on recopiera sur la copie .

étape 0étape 1étape 2étape 3étape 4
a0
b1
b-a
m


b) Que représentent les valeur contenues dans les variables a et b après exécution de l'algorithme ?

c) Modifier l'algorithme ci-dessous pour que soient contenues dans les variables a et b les deux bornes d'un encadrement de d'amplitude 10-3  .

5) Étudier la convexité de la fonction f .

6) Montrer que Cf admet un point d'inflation dont on déterminera les cordonnées .

Posté par
Yzz
re : Dichotomie 17-02-22 à 21:18

Salut,

Tu en es où ?

Posté par
foq
re : Dichotomie 17-02-22 à 21:54

1) La Limite de f qui tend vers plus l'infinie c'est -6 , \lim_{x\rightarrow +\propto } f(x) = -6

2) f est décroissant sur l'intervalle [0;+ [ .
      La dériver de f est f'(x)=-70xe^{-5x^{2}}

3) . f est continue sur ]0;1[ .
      .   f est décroissant sur ]0;1[ .
      . f(0)=1      et      f(1)=-5.953
D'après la T.V.I. f(x)=0 admet une unique solution sur ]0;1[ .

4)a)

étape 0étape 1étape 2étape 3étape 4
a00000
b10.50.250.1250.0625
b-a10.50.250.1250.0625
m0.50.250.1250.0625


b) Les variables a et b après exécution de l'algorithme représentent l'intervalle de d'amplitude 10-1 .

c) Il faut modifier while b-a>0.001

5) La fonction f est concave ( [0;\frac{1}{\sqrt{10}} [)
puis convexe (]\frac{1}{\sqrt{10}};+[ ) .

6) J'arrive pas .

Posté par
Yzz
re : Dichotomie 18-02-22 à 06:37

Ce n'est pas "un point d'inflation" , mais un point d'inflexion.
Tu en connais la définition ?

Posté par
carita
re : Dichotomie 18-02-22 à 09:33

bonjour à tous deux

je suis étonnée de cette partie de l'énoncé :

foq @ 17-02-2022 à 21:09

4) On donne le pseudo- code ci-dessous (mis en bleu)  :
a0
b1
Tant que b-a>0.1
  m\frac{1}{2}*(a+b)
  Si f(m)<0
    Alors 1 m
  Sinon bm

  Fin Si
Fin Tant que


foq, tu veux bien vérifier l'énoncé d'origine ?
et qu'as-tu trouvé en 3) sur la valeur approchée de alpha ?...

Posté par
foq
re : Dichotomie 18-02-22 à 12:48

Bonjour carita et Yzz .

Pour le programme c est a =m Puis b=m . Excusez moi pour ce faute d inattention.

Pour la 3) , on a juste appris à dire que existe .

Un point inflexion c est quand la fonction change de signe .

Posté par
carita
re : Dichotomie 18-02-22 à 12:59

c est a =m Puis b=m
je peux me tromper, mais j'aurais parié l'inverse...

Pour la 3) , on a juste appris à dire que alpha existe .
==> si, à l'aide de la calculatrice, ou de géogébra, tu cherches une valeur approchée de alpha,
tu verras que ça 'cadre' pas avec ton tableau (qui est à reprendre)

Un point inflexion c est quand la fonction change de signe .
  ---  quelle fonction ? précise

tu as une fiche sur le site :   Fonction convexe, concave et point d'inflexion

Posté par
carita
re : Dichotomie 18-02-22 à 13:52

avant de refaire ton tableau, vérifie bien l'énoncé :

soit c'est :
Si  f(m) >  0             -----  f(m) positif
        Alors a = m
       Sinon b = m

soit c'est :
Si  f(m) <  0             -----  f(m) négatif
        Alors b = m
        Sinon a = m

... parce que la fonction f est décroissante sur R+

ps : Yzz, tu reprends la main quand tu veux

Posté par
Yzz
re : Dichotomie 18-02-22 à 14:39

Salut carita  

Je t'en prie, je ne passe quede temps en temps, n'hésite pas à intervenir !

Posté par
foq
re : Dichotomie 18-02-22 à 18:51

Bonsoir carita et Yzz

Citation :
avant de refaire ton tableau, vérifie bien l'énoncé :

soit c'est :
Si  f(m) >  0             -----  f(m) positif
        Alors a = m
       Sinon b = m
C'est celui la . Pour le tableau , j 'ai directement demander on professeur et il ma dit que m à l'étape 0 n'a pas de valeur quand on l'exécute .

3) Il me demande les coordonnées du point d'inflexion . Alors il faut que je calcule l'équation de la tangente , pour trouver x et y .    

De plus , Est ce que mes autre réponse sont correcte .

Posté par
carita
re : Dichotomie 18-02-22 à 19:42

1)2) ok
3) ok mais précise bien strictement décroissante pour pouvoir affirmer que la solution alpha est unique

4)a) (le professeur) m'a dit que m à l'étape 0 n'a pas de valeur quand on l'exécute.
oui, si on considère que l'étape 0 est avant de rentrer dans la boucle.
refais ton tableau avec l'algorithme que tu as confirmé.
compare ce que tu trouveras à la dernière étape avec une valeur approchée de alpha (calculatrice...)

b) c) ok

5) ce que tu dis est exact, mais tu détailleras sur ta copie !
6) point d'inflexion : utilise ton étude du 5)   (tu as regardé le lien ?)

Posté par
foq
re : Dichotomie 18-02-22 à 23:02

Bonsoir carita

3) Par Geogebra j'ai trouvé f(-0,18)=0 et f(0,18)=0 .

4) a )

étape 0étape 1étape 2étape 3étape 4
a00,50,750,8750,9375
b11111
b-a10.50.250.1250.0625
m0,50,750,8750,9375


6) Les coordonnées sont  (\frac{1}{\sqrt{10}} ; -1,754 )

Merci et Bonne Soirée

Posté par
carita
re : Dichotomie 19-02-22 à 09:30

bonjour foq

oui, par géogébra, on trouve une valeur approchée 0.1756.
note : f(-0.18) n'existe pas

or, souviens-toi de ce que tu as écrit :
4b) Les variables a et b après exécution de l'algorithme représentent l'intervalle d'amplitude 10-1 .
autrement dit, on doit avoir [a;b]

à l'étape 4 du tableau que tu proposes, [0 ; 0.125], ce n'est pas le cas....
donc tableau à revoir.

Dichotomie

6) oui mais je pense que ton professeur attend la valeur exacte, abscisse et ordonnée.

Posté par
carita
re : Dichotomie 19-02-22 à 09:42

je viens de voir que je me suis trompée de tableau...  
mais ton dernier n'est pour autant pas correct, puisque [0.9375;1]

pour punition, je refais et je reviens

Posté par
foq
re : Dichotomie 19-02-22 à 10:09

Le programme en Python c'est bien ça ou pas :

a=0
b=1
while b-a>0.1:
    m=(1/2)*(a+b)
    if m<0:
        a=m
    else:
        a=m
    
    
    print(a,b,b-a,m)

Posté par
carita
re : Dichotomie 19-02-22 à 10:23

le code correspondant à

foq @ 18-02-2022 à 18:51

Si  f(m) >  0             -----  f(m) positif
        Alors a = m
       Sinon b = m

ne correspond à ce que tu as écrit :

a=0
b=1
while b-a>0.1:
    m=(1/2)*(a+b)
    if m<0:
        a=m
    else:
        a=m
    print(a,b,b-a,m)


et pour fonctionner, tu dois rajouter la définition de la fonction à ton code,
et importer la fonction exp de math.

Posté par
foq
re : Dichotomie 19-02-22 à 10:41

Je trouve ça :

>>> # script executed
... a=0
... b=1
... while b-a>0.1:
...     m=(1/2)*(a+b)
...     if m>0:
...         a=m
...     else:
...         b=m
...         
...     print(a,b,a-b,m)        
... 
... 
0.5 1 -0.5 0.5
0.75 1 -0.25 0.75
0.875 1 -0.125 0.875
0.9375 1 -0.0625 0.9375

Posté par
carita
re : Dichotomie 19-02-22 à 10:55

non !
ce n'est pas if m>0 mais if f(m)>0
c'est l'image de m qui est testée

tu vois bien que alpha, env. 0.1756,  n'est pas compris entre 0.9375 et 1

Posté par
carita
re : Dichotomie 19-02-22 à 10:58

graphiquement :
Dichotomie

Posté par
foq
re : Dichotomie 19-02-22 à 11:03

Je ne sais pas comment codée f(m) sur python .

Posté par
carita
re : Dichotomie 19-02-22 à 11:04

rajoute ceci au tout début de ton code


from math import exp

def f(x):
    return 7*exp(-5*x**2) - 6

Posté par
carita
re : Dichotomie 19-02-22 à 11:07

en définissant cette fonction f,

à chaque fois que, dans le corps principal du programme, python lira

...     if f(m) > 0 :

il ira exécuter la fonction, c'est-à-dire calculer l'image de m,
avant de reprendre la séquence d'instruction à la suite, dans le corps principal.

Posté par
foq
re : Dichotomie 19-02-22 à 11:13

foq @ 18-02-2022 à 18:51

Si  f(m) >  0             -----  f(m) positif
        Alors a = m
       Sinon b = m


Je me suis trompée . Excusez moi . C'est f(m)<0 .

Posté par
foq
re : Dichotomie 19-02-22 à 11:15

from math import*
def f(x):
    return 7*exp(-5*x**2) - 6

def dic(a,b):
    while b-a>0.1:
        m=(1/2)*(a+b)
        if f(m)<0:
            a=m
        else:
            b=m
        
        print(dic(0,1))        


Il m'affiche rien .

Posté par
carita
re : Dichotomie 19-02-22 à 11:16

non, ce n'est pas possible avec une fonction décroissante.

il s'agit forcément d'une des 2 options décrites 18-02-22 à 13:52.

dans le cas contraire, il y a erreur d'énoncé
(algorithme copié-collé à partir d'un autre exo où la fonction serait croissante, et pas adapté à f sur R+)

Posté par
carita
re : Dichotomie 19-02-22 à 11:24

ouh là !
où tu as pris ce code ? tu joues à l'apprenti sorcier en mélangeant des mixtures ?

déjà ce code est incomplet et mal indenté, sans compter que (je persiste !) que c'est f(m) >0
si je le corrige :

from math import*
def f(x):
    return 7*exp(-5*x**2) - 6

def dic(a,b):
    while b-a>0.1:
        m=(1/2)*(a+b)
        if f(m) > 0:
            a=m
        else:
            b=m
    return a, b
        
print(dic(0,1))      

il retourne :  
(0.125, 0.1875)


==> je te conseille toutefois de coder avec des instructions que tu maitrises, si tu veux progresser.
ci-dessus, tu définis 2 fonctions... pas évident si tu débutes.

voici le code que je te propose et qui traduit l'algo (corrigé!) de l'énoncé :
from math import exp

def f(x):
    return 7*exp(-5*x**2) - 6

a=0
b=1
while b-a > 0.1:
    m=0.5*(a+b)
    if f(m) > 0:
        a=m
    else :
        b=m
        
print (a,b)


il retourne
0.125 0.1875

Posté par
carita
re : Dichotomie 19-02-22 à 11:30

avec tous ces éléments,
essaie de remplir le tableau du 4a (à la main, comme il me semble que c'est demandé)
aide toi de mon graphique si besoin.

je reviendrai ensuite te donner un code qui détaillera les étapes et te permettra de te vérifier.

Posté par
foq
re : Dichotomie 07-03-22 à 21:04

Bonsoir carita

Avec du retard j'ai trouvé ça :  

... from math import*
... 
... def f(m):
...     return 7*exp(-5*m**2) - 6
... 
... a=0
... b=1
... while b-a > 0.1:
...     m=0.5*(a+b)
...     if f(m) > 0:
...         a=m
...     else :
...         b=m
...         
...     print (a,b,a-b,m)
... 
0 0.5 -0.5 0.5
0 0.25 -0.25 0.25
0.125 0.25 -0.125 0.125
0.125 0.1875 -0.0625 0.1875

Posté par
carita
re : Dichotomie 07-03-22 à 21:43

bonsoir foq

tu y es
juste peut-être modifier le print (a,b,a-b,m)  en   print (a,b,b-a,m) pour que cela corresponde à ton tableau.

----

pour le fun, si ça t'intéresse, une petite variante,
où l'on permet à l'utilisateur de saisir l'amplitude souhaitée (0.1 ou 0.001 ou ....), par un input ,
et où je crée une seconde fonction python que j'appelle dicho.

la ligne inf, sup = dicho(amplitude)  lance l'exécution du programme,
et récupère les bornes inférieure et supérieure (inf et sup) de l'intervalle qui encadre alpha.


from math import exp

# définition de la fonction f
def f(x):
    return 7*exp(-5*x**2) - 6

# dichotomie 
def dicho(e) :
    a=0
    b=1
    while b-a > e:
        m=0.5*(a+b)
        if f(m) > 0:
            a=m
        else :
            b=m
    return a,b

# corps principal du programme
amplitude = float(input("saisissez l'amplitude : "))
inf, sup = dicho(amplitude)
print ("la racine de la fonction f appartient à l'intervalle [", inf, ";", sup, "]")


saisissez l'amplitude : 0.01
la racine de la fonction f appartient à l'intervalle [ 0.171875 ; 0.1796875 ]


bonne continuation !

Posté par
foq
re : Dichotomie 07-03-22 à 21:47

MERCI de m'avoir aidé jusqu'au bout !



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 1674 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 !