最简单但计算量最大的是泰勒公式:e=1+1/1!+1/2!+1/3!+1/4!+...
下面是求e的R语言函数:
e_fun <- function(n) {etemp <- 1
ni <- 1L
for (i in 1:n) {
etemp <- etemp + 1 / ni
ni <- ni * (i + 1)
}
return(etemp)
}
不过你题目中要求的是求到精度为0.00001就停止,所以可以采用repeat循环:
i <- 1Lni <- 1L
etemp <- 1
repeat {
etemp1 <- etemp
etemp <- etemp + 1 / ni
ni <- ni * (i + 1)
i <- i + 1
if (etemp - etemp1 < 0.00001) break
}
i
etemp
在最后可以看到,求到i=10时,精度就已经达到要求了。
产生100个均值为0标准差为1的正态分布随机数:rnorm(100, mean = 0, sd = 1)指数分布数 dnorm(x, mean = 5, sd = 1, log = TRUE)
用R语言如何编写程序输出a+b=c程序输出:两数的和与差
#include<iostream>
using
namespace
std
int
main()
{
int
a,b,c,d
cout<<"输入两个数"<<endl
cin>>a
cin>>b
c=a+b
d=a-b
cout<<"c=a+b"<<"="<<c<<endl
cout<<"d=a-b"<<"="<<d<<endl
return
0
}