Area Elipse
area_elipse <- function(n,a,b){
x = runif(n, -a, a)
y = runif(n, -b, b)
d = ((x^2)/a^2+(y^2)/b^2<=1)
plot(x,y, pch= 16,asp = TRUE, col=d, cex=0.1)
abline(v=c(-a,a),h=c(b,-b), col='blue')
area_real = pi*a*b
area_estimada = 2*a*2*b*sum(d)/n
pi1 = (area_estimada)/(a*b)
print(area_real)
print(area_estimada)
print(pi1)
}
area_elipse(100000,2,1)

## [1] 6.283185
## [1] 6.30216
## [1] 3.15108
Area entre 2 curvas
n=100000
x = runif(n, 0, 1)
y = runif(n, 0, sqrt(1))
punt = (y<=sqrt(x) & y>=x^2)
plot(x,y, pch=16, cex=0.1, col=punt)
curve(sqrt(x), add=T, col='blue')
curve(x^2, add=T, col='blue')
abline(v=c(0,1),h=c(0,1), col='red')

area_estimada = sum(punt)/n
area_estimada
## [1] 0.33155
integrate(function(x) sqrt(x)-x^2, lower = 0, upper = 1)
## 0.3333334 with absolute error < 7.8e-05