[英]How many numbers after the decimal point can you show using R?
我想知道你能打印多久这个:
http://www.iheartchaos.com/post/16393143676/fun-with-math-dividing-one-by-998001-yields-a
在R.
例如:1/998001
你可以使用mpc包,
# 3000 is the precision in bits
> mpc(1, 3000) / mpc(998001, 3000)
[1] "(1.0020030040050060070080 ...
...
这是一个不需要任何花哨的软件包的解决方案,只需要基础R和小学算术的闪回:
longdiv <- function(num,den, limit=3000, spaces=TRUE) {
i <- 0
if( num < den ) {
cat('0.')
num <- num*10
} else {
cat( num %/% den, '.', sep='')
num <- (num %% den) * 10
}
while( i < limit ) {
i <- i + 1
if( num < den ){
cat('0')
num <- num*10
} else {
cat( num %/% den )
num <- (num %% den) * 10
}
if(spaces){
if( (i %% 30) == 0 ) {
cat('\n')
} else if( (i %% 3) == 0 ) {
cat(' ')
}
}
flush.console()
}
cat('\n')
}
longdiv(1,998001)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.