Re: [問題] subroutine 和 function 的差別?

看板Fortran作者 (sjgau)時間16年前 (2008/10/07 20:41), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串3/5 (看更多)
以下的 call xxx(), xxx() 都是 副程式,subroutine 至於,為何不使用 function 的形式, 這是 見仁見智的問題, 要是由我來寫這兩個 副程式, 我也是會 寫成 subroutine random_seed() 是建立 虛擬亂數系列的 種子數, random_number() 是產生 0.0 to 0.999 的亂數, x >= 0.0, and x < 1.0 program VF1007 USE DFLIB implicit none real x, sum integer no, i no= 10e+6 + 0.5 sum= 0.0 call random_seed() do i=1, no call random_number(x) sum= sum + x end do print *, 'ave= ', sum/no end program VF1007 ※ 引述《shelling (shelling)》之銘言: : 新手上路 : 請教一下 subroutine 和 function 這兩個宣告方式有什麼不同呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.231.5.90

10/07 21:32, , 1F
ave 會趨近於 0.5 左右
10/07 21:32, 1F

10/08 04:53, , 2F
可以把subroutine想成是C裡的void function嗎?
10/08 04:53, 2F

10/08 08:41, , 3F
可以
10/08 08:41, 3F
文章代碼(AID): #18wra15- (Fortran)
文章代碼(AID): #18wra15- (Fortran)