web-dev-qa-db-fra.com

'int' n'est pas une erreur appelable dans python

Je reçois cette erreur:

Traceback (most recent call last):
  File "C:\Users\George\Desktop\ex3.py", line 15, in <module>
    s=s+d*2(-1/6.)*(u-1)*(u-2)*(u+2)*(u-4)
TypeError: 'int' object is not callable

Voici mon code:

x=input()
z=input()
n=input()
while x>=z:
    x=input()
    z=input()
while n<0:
    n=input()
while n>0:
    d=(z-x)/1.*n
    k=1
    s=(d/2.)*((-1/6.)*(x-1)*(x-2)*(x+2)*(x-4)+(-1/6.)*(z-1)*(z-2)*(z+2)*(z-4))
    while k<=n-1:
        u=x+k*d
        s=s+d*2(-1/6.)*(u-1)*(u-2)*(u+2)*(u-4)
        k=k+1
        print "%.3f" %s
        x=input()
        z=input()
        n=input()
        if n>0:
            while x>=z:
                x=input()
                z=input()
7
GeorgeDavidKing

Vous essayez d'utiliser 2 en tant que fonction:

2(-1/6.)

Insérez un * multiplier:

2*(-1/6.)

ou comme expression complète:

s=s+d*2*(-1/6.)*(u-1)*(u-2)*(u+2)*(u-4)
22
Martijn Pieters