Re: [問題] 準確度問題

看板Fortran作者 (sjgau)時間15年前 (2009/11/11 11:16), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串5/5 (看更多)
: #include "stdafx.h" : #include <stdio.h> : #include <math.h> : #include <process.h> : // ---------------------------------------------- : double get_item(int n) : { : double ans; : ans= 1.0; : for (int i=2;i<=n;i++) { : ans= ans*2.0/i; : } : return(ans); : }// end of get_item() : // ---------------------------------------------- 上面是 函數, for 是迴圈,等於 int i= 2; do while(i .LT. n) ans= ans*2.0/i i= i + 1 end do 個人覺得,Fortran 和 C 沒有什麼不同啊 : int main(int argc, char* argv[]) : { : double sum, item; : int m, n; : sum= 1.0; : for (m=2;m <= 25;m++) { : n= m*2; : item= get_item(m*2); : if ((m%2) == 0) { : item*= -1; : } : sum+= item; : printf("n= %3d, %.18lf\n", (n), sum); : } : return 0; : } : ※ 引述《mon02118 (我不是好男人)》之銘言: : : 我們老師出一個作業 : : 計算 : : 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: 118.231.79.164

11/23 12:23, , 1F
我還是看不懂C,為什麼一開始有#include, 大括號是什麼意思
11/23 12:23, 1F

12/16 19:19, , 2F
#include視同遊戲外掛沒某些外掛不能做某些事
12/16 19:19, 2F

12/16 19:20, , 3F
大括號為fortran裡的loop如do-enddo,if-endif
12/16 19:20, 3F

12/16 19:22, , 4F
亦可視為founction-end,subroutine-end
12/16 19:22, 4F
文章代碼(AID): #1A-Yn_yO (Fortran)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 5 篇):
文章代碼(AID): #1A-Yn_yO (Fortran)