다음 코드는 3 초 동안 계속 실행 한 다음 총계를 중지하고 인쇄합니다.
x <- Sys.time()
duration <- 3 # number of seconds
heads <- 0
tails <- 0
while(Sys.time() <= x + duration){
s <- sample(0:1, 1)
if(s == 1) heads <- heads+1 else tails <- tails+1
cat(sample(0:1, 1))
}
cat("heads: ", heads)
cat("tails: ", tails)
결과 : 경고
001100111000011010000010110111111001011110100110001101101010 ...
heads: 12713
tails: 12836
참고 : 내 컴퓨터의 속도에서
, 난 당신이 긴 전에 부동 소수점 오류 내기 주의 끝. 다시 말해, 정수, double, float 또는 사용중인 모든 값으로 저장할 수있는 최대 값을 얻을 수 있으며 코드가 충돌합니다.
그래서 오류 검사 또는 롤오버 메커니즘을 구축하여이를 방지해야합니다. 정상적으로 부동 소수점 과부하
x <- 1e300
while(is.finite(x)){
x <- x+x
cat(x, "\n")
}
R 거래를하고 Inf
을 반환 무슨 일이 일어날의 가속 그림에 대한
다음을 시도하십시오.
그래서 시뮬레이션에 있던 데이터가 손실됩니다. 무한대를 합리적으로 분석 할 수는 없습니다.
시뮬레이션을 디자인 할 때는이 점을 명심하십시오. 이제 일주일보다 작은 동안
왜이 기능을 원하십니까? 확실히 결과는 컴퓨터의 컴퓨터 속도에 달려 있습니까? – Andrie
왜 그렇게 중요한가요?가능한지 알고 싶습니다. 평범한 요청이라고 생각합니다. 이것은 제가하고 싶은 일을하는 데있어 부분적으로 도움이 될 것입니다. –
당신이 나를 도와주기를 원한다면 그렇게합니다. – Andrie