q1, dexp是指数分布的概率密度;
r*是生成*分布的随机数,p是*分布的概率分布,d是概率密度,还有q是d的反函数,貌似
R可向量操作,数乘向量是用数乘向量内的每个元素
q2, pi在R里是一个常量,可直接用,3.141593,没有你要求的精度高,你可pi<-3.1415926535...
q3, 不会
q4, integrate 函数能算数值积分;蒙特卡洛积分我不会,甚至都没听过,不是数学专业的,正常正常...
以 ∫ e^(-x) dx 上限: 无限, 下限:0为例啊;
f<-function(x) {exp(-x)}integrate(f, lower=0, upper=Inf)
若是 ∫ e^(-x^3) dx的话,
f<-function(x) {exp(-x^3)}就行了
function 是定义一个函数,这个函数的名字是poissonproc,感脚上是个泊松过程吧;rpois是按照泊松分布生成随机数rpois(n, lambda),生成n个;
runif是按照均匀分布生成随机数runif(n, min=0, max=10), 生成n个,这个n是之前的结果,最大值是10,最小值默认为0;
返回的 均匀分布的随机数中,[4, 5]之间的个数;
最后一句:上述过程重复10000次;
if (any(sieve ==i)) { # 如果i在sieve里 也可以写成 if ( i %in% sieve ) {primes <- c(primes, i) # 把i放到prime里
sieve <- c(sieve[(seive %% i) != 0], i) #把所有sieve里i的整数倍数(除了i)取走
# %%是mod, 余数,所以 sieve[seive%%i) !=0]是所有seive里除以i余数不为0的数
}
整个这段代码是找出所有比n小的质数