Programmes convertis en Scilab – Épreuves 2009 – Corrigé
Ecricome 2009 : Exercice 2 :
I. 6. Écrire un programme en Scilab qui permet d’encadrer ߙ dans un intervalle d’amplitude 10ିଶ. On applique la méthode de dichotomie sur ቂ0;ଵଶቃ et on définit au préalable la fonction ߮.
function [y]=phi(x) y=2*log(x/2)+1/x endfunction
a=0, b=1/2
while b-a>10^-2 do c=(a+b)/2
if phi(c)>0 then a=c else b=c end
end
EML 2009 : Exercice 2 :
II. 5. Écrire un programme en Scilab qui permet de déterminer et d’afficher la plus petite valeur de ݊ pour laquelle on a : |ݑ−ߙ|≤ 10ିଷ.
La fonction ݂ ayant deux expressions distinctes, il est préférable de la définir avec Scilab.
function [y]=f(x)
if x<>0 then y=x/(exp(x)-1) else y=1 endfunction
u=1,n=0
while abs(u-log(2))>10^-3 do u=f(u), n=n+1 end
disp(n)
Edhec 2009 : Exercice 2 :
Compléter le programme suivant pour que, d’une part, il simule les lancers d’une pièce donnant
« pile » avec la probabilité p et calculer la valeur prise par la variable aléatoire X égale au rang du premier « pile » obtenu lors de ces lancers (X suit bien la loi géométrique de paramètre p) et pour que, d’autre part, il calcule et affiche la valeur prise par T, la variable aléatoire T ayant été définie dans la deuxième question.
p=input(‘entrer un réel p compris entre 0 et 1 :’) x=0
while rand()>p do x=x+1 end
if floor(x/2)==x/2 then t=x/2 else t=(1+x)/2 end
disp(t)