Correction de la question 3 de l'activité 8
#Fonction numérique que l'on étudie
def f(x):
y=x**3+x-14
return y
#Fonction qui donne l'intervalle d'amplitude h ...
#... qui contient la solution de l'équation f(x)=0
def dichotomie(borneInf,borneSup,amplitude,k):
a=borneInf
b=borneSup
e=amplitude
while b-a>e:
m=(a+b)/2
if (f(a)-k)*(f(m)-k)>0:
a=m
else:
b=m
return a,b
#--------------------------------------------------------------------------
#Programme principal
#--------------------------------------------------------------------------
k=2
a=1
b=5
e=0.03125
bornes=dichotomie(a,b,e,k)
print("L'intervalle d'amplitude ",e," et qui contient la solution de l'équation f(x)=",k," est : ")
print(']',bornes[0],' ; ',bornes[1],'[') #ATTENTION AUX RESULTATS OBTENUS