[問題] 準確度問題
我們老師出一個作業
計算
2^3 2^5 2^7 2^9 2^49
1- ----- + ----- - ----- + ----- .... ------
4! 6! 8! 10! 50!
這是我打的
implicit none
integer::i,a,c
real(kind=8)::ss,n,v
a=1
do i=1,50
if(i/2*2/=i)n=2**i
a=a*i
if(i/2*2==i)then
v=a
c=c+1
ss=ss-(-1)**c*n/v
write(*,*)c,ss
endif
enddo
end
算出來的
1 1.00000000000000
2 0.666666666666667
3 0.711111111111111
4 0.707936507936508
5 0.708077601410935
6 0.708073325851104
7 0.708079731129053
8 0.708063381375117
9 0.707917491813515
10 0.708166899470330
11 0.704154863362005
12 0.714965674172816
13 0.696866126661503
14 0.794427102271259
15 1.17537948322364
16 0.175379483223640
17 NaN
18 NaN
19 NaN
20 NaN
21 NaN
22 NaN
23 NaN
24 NaN
25 NaN
好像算到第10項就錯了, 請問我應該怎麼修改呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.42.44
→
11/09 01:48, , 1F
11/09 01:48, 1F
→
11/09 13:21, , 2F
11/09 13:21, 2F
推
11/09 13:38, , 3F
11/09 13:38, 3F
推
11/09 18:09, , 4F
11/09 18:09, 4F
討論串 (同標題文章)
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章