bonjour à tous,

sur ce programme ci-dessous pour dichotomie, j'ai une erreur qui me dit que zero est de TypeNone.

Pouvez vous m'aider sur ce pb ? merci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
 
 
def f(x):
    return (x**2 + x - 4)
 
def dicho (fonction, precision, a=3, b=100):
    assert fonction(a) * fonction(b) < 0 #si la condition est respectée on continue, sinon on arrête
 
    while (b-a) > precision :
        milieu = (b+a)/2
        if fonction(milieu) * fonction(a) > 0 : #la courbe coupe y=0 entre milieu et b
            a,b = milieu,b                          #donc on change la borne a en milieu
        else :
            a,b = a, milieu
    return
 
 
 
 
 
#############################
#Programme
#############################
 
 
zero = dicho (f, 0.00001, 0, 10)
 
print ("la courbe s'annule pour x = ", zero)