Para definir uma função «por bocados» faz-se, por exemplo
> f:=x->piecewise(x<-1,-1,x>1,1,x);
O seu gráfico é dado por
> plot(f(x),x=-3..3);
![[Maple Plot]](../imagens/m19/aula192.gif)
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);
e a função
> s:=l->sum(d(l[k]),k=1..nops(l));
![s := proc (l) options operator, arrow; sum(d(l[k]),...](../imagens/m19/aula194.gif)
Aplicando isto à lista anterior, obtém-se
> s(lista);
Logo, a probabilidade de um ponto daquela lista pertencer à circunferência unitária é igual a
> %/1000.;
Repare-se que a probabilidade de um elemento de uma lista arbitrária pertencer à circunferência unitária é igual a
> evalf(Pi/4);
Quer-se agora criar um cone. Pode-se fazer
> plot3d(z,theta=-Pi..Pi,z=-1..1,coords=cylindrical);
![[Maple Plot]](../imagens/m19/aula198.gif)
ou então
> plot3d(z,theta=-Pi..Pi,z=-1..1,coords=cylindrical,style=patchnogrid);
![[Maple Plot]](../imagens/m19/aula199.gif)