funcprot(0);
// fonction du pb4 Q2 pour tester
function z=f0(x,y)
  z=(1-y)*(2+sin(5*%pi*x));
endfunction

// Fonction qui calcule l'intégrale par méthode de moyenne
// [a,b]x[c,d]: domaine d'intégration
// f: nom de la fonction à intégrer
// N: nombre de points aléatoires à générer

function I=MC_moyenne(a,b,c,d,f,N)
  U=rand(1,N); // N nombres aléatoires distribués uniformément entre 0 et 1
  V=rand(1,N)
  S=0;
  for j=1:N
      for i=1:N
          S=S+f(a+(b-a)*U(i), c+(d-c)*V(j)); // on cumule la somme pour la moyenne
      end
  end
  I=(b-a)*(d-c)*S/(N^2); // l'intégrale égale à la moyenne * longueur de l'intervalle
endfunction

N=10;
 
// test avec la fonction 

a=0;
b=1;
c=0;
d=1;

I1=MC_moyenne(a,b,c,d,f0,N);

I=1.0

e1=abs(I-I1);

// pour avoir un affichage console formaté on peut utiliser en scilab
// la fonction printf de C

printf("\n ***test 1 : fn constante***\n  valeur exacte : %f\n méthode de moyenne : %f\n n erreur de méthode de moyenne %f\n", I,I1,e1,);


