Aula nº19

Uso de números aleatórios (continuação)

Para definir uma função «por bocados» faz-se, por exemplo

> f:=x->piecewise(x<-1,-1,x>1,1,x);

f := proc (x) options operator, arrow; piecewise(x ...

O seu gráfico é dado por

> plot(f(x),x=-3..3);

[Maple Plot]

Vai-se regressar agora aos pontos aleatórios do quadrado que tem por vértices (1,1), (1,-1), (-1,1) e (-1,-1). Dado um tal ponto, como saber se está ou não na circunferência unitária? Basta definir a função

> d:=p->piecewise(p[1]^2+p[2]^2<1,1,0);

d := proc (p) options operator, arrow; piecewise(p[...

e a função

> s:=l->sum(d(l[k]),k=1..nops(l));

s := proc (l) options operator, arrow; sum(d(l[k]),...

Aplicando isto à lista anterior, obtém-se

> s(lista);

793

Logo, a probabilidade de um ponto daquela lista pertencer à circunferência unitária é igual a

> %/1000.;

.7930000000

Repare-se que a probabilidade de um elemento de uma lista arbitrária pertencer à circunferência unitária é igual a

> evalf(Pi/4);

.7853981635

Gráficos tridimensionais

Quer-se agora criar um cone. Pode-se fazer

> plot3d(z,theta=-Pi..Pi,z=-1..1,coords=cylindrical);

[Maple Plot]

ou então

> plot3d(z,theta=-Pi..Pi,z=-1..1,coords=cylindrical,style=patchnogrid);

[Maple Plot]