Comment passer une expression en argument à une fonction sous python ?
Bonjour,
Voici un programme, assez naif car je suis débutant.
Il s'agit de l'aire sous une courbe avec la méthode monté carlo et avec la méthode des rectangles.
Est-ce possible de passer l'expression exp(-x**2) en argument à la fonction f ?
Comme ça on peut facilement changer d'expression au lieu d'aller dans le corps du programme et supprimer puis changer.
Merci d'avance.
Code:
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
| print("Méthode Monté Carlo")
from math import*
from importlib import*
from random import *
def f(a,b,n):
s=0
print("s=aire sous la courbe")
for i in range(0,n):
x=random()*a
y=random()*b
if y<=exp(-x**2):
#if y<=exp(-x**2):
#if y<=x**2:
s=s+1
print("s=",a*b*s/n)
print("Méthode des rectangles")
x=0
s=0
while x<=a:
s=s+0.0001*exp(-x**2)
#s=s+0.0001*exp(-x**2)
#s=s+0.0001*(x**2)
x=x+0.0001
print("s=",s) |