Özellikle, bir toplamını hesaplamak R kullanıyorumR neden burada toplamı yanlış yapıyor?
(cevap R hala bu bu konuda bilgisi olan birinden bunun nedenleriyle ilgili ayrıntıları duymak isteriz, küçük ondalık sayıları depolamak için ikili sayıları nasıl kullandığını gerçekten ise) Bu bir: çıktıya bakarsanız
r = 21 #Number of times the loop executes
n = 52
sum = 0 #Running total
for(k in 0:r){
sum = sum + (1-(choose(2^(k), n)*(factorial(n)/(2^(n*k)))))
print(sum)
}
, fark edeceksiniz:
İşte benim Ar kod
[1] 1
[1] 2
...
[1] 11.71419
[1] 11.71923
[1] 11.72176
[1] 12.72176
[1] 13.72176
19. yinelemeden sonra neden 1 artırılıyor?
Bu görev için daha uygun olabilecek başka serbest hesaplamalı motorlar var mı?
Çünkü 1'den sonraki terim, k = 19 ve NaN (underflow) sonra 25'ten sonra 0'dır. Toplamın ne yapmasını bekliyorsunuz? Sonlu bir şeye yakınlaşmak mı? –
Maple'ı deneyebilirsiniz, toplamı yaklaşık 11.72428812 olarak bulur. R açısından, bir olasılık rasgele değişken için Monte Carlo simülasyonu yapmaktır. – Julius
Sadece kayıt için, döngü yazıldığı gibi, döngü r + 1 kez (ek açıklamada belirtildiği gibi r kere değil) yürütülür –