\[\int_{0}^{2e} ln(x)dx = \lim_{b \to 0}\int_{b}^{2e} ln(x)dx\]

integrl<- function(x) log(x)
x1<- seq(0,2*exp(1),by=0.01)
plot(x1,integrl(x1),type ='l', col='red')

plot(x1,integrl(x1),type ='l', col='red')
a<-0.0001
b<-2*exp(1)
n1<-500000
simuinte<-function(n1,a,b){
  x<-runif(n1,a,b)
  y<-runif(n1,-4,integrl(b))
  co<-ifelse(y<=integrl(x),'blue','red')
  points(x,y,col=ifelse(y<=integrl(x),'blue','red'))
}
simuinte(n1,a,b)

x1<-runif(n1,a,b)
y1<-runif(n1,-4,integrl(b))
co<-ifelse(y1<=integrl(x1),'green','chocolate3')
table(co)/n1
## co
## chocolate3      green 
##   0.174944   0.825056
plot(x1,integrl(x1),type = 'l', ylim = c(0,2),col='cyan',lwd=2, ylab = 'y',xlab = 'x')
a<-0.0001
b<-2*exp(1)
n1<-50000
simuinte<-function(n1,a,b){
  x<-runif(n1,a,b)
  y<-runif(n1,0,integrl(b))
  co<-ifelse(y<=integrl(x),'blue','red')
  points(x,y,col=ifelse(y<=integrl(x),'blue','red'))
}
simuinte(n1,a,b)

x1<-runif(n1,a,b)
y1<-runif(n1,0,integrl(b))
co<-ifelse(y1<=integrl(x1),'green','yellow')
(table(co)/n1)*(b-1)*integrl(b)
## co
##    green   yellow 
## 3.895146 3.616610
plot(x1,integrl(x1),type = 'l', ylim = c(-10,2),xlim = c(0,1),col='black',lwd=2, ylab = 'y',xlab = 'x')
a<-0.0001
b<-1
n1<-50000
simuinte<-function(n1,a,b){
  x<-runif(n1,a,b)
  y<-runif(n1,-10,0)
  co<-ifelse(y<=integrl(x),'blue','red')
  points(x,y,col=ifelse(y<=integrl(x),'blue','red'))
}
simuinte(n1,a,b)

x1<-runif(n1,a,b)
y1<-runif(n1,-10,0)
co<-ifelse(y1<=integrl(x1),'green','chocolate3')
table(co)/n1*(-4)
## co
## chocolate3      green 
##   -0.39416   -3.60584