作者doun (DoDo)
看板Fortran
標題[問題] 請問這個程式碼是fortran嗎?
時間Fri Apr 27 00:00:01 2012
http://www.ewp.rpi.edu/hartford/~parenw/AEM2/project/backupfiles/graetz.f
檔案連結
我在進行fortran時,會跑出很多的error
因為本身第一次接觸,不大知道到底是甚麼問題
猜想是否是版本不同
使用的fortran 95
麻煩幫忙解答> <
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.111.73
1F:推 terryys:linux用ifort沒有問題,大概是你編譯器的選項或者安裝問題? 04/27 00:07
2F:→ doun:我不大會使用編譯系統 但我用的是WIN7的介面 04/27 00:09
3F:→ doun:還是可以教我如何在WIN7裡面打開的方法嗎? 04/27 00:09
4F:推 terryys:要是設定都有弄好的話,g95 graetz.f就應該可以了 04/27 00:12
5F:→ doun:設定是關於甚麼東西? 04/27 00:15
6F:推 terryys:環境變數path有加上g95所在的路徑,假設你是用g95 04/27 00:20
7F:→ terryys:或者你不嫌麻煩也可以打上g95的整個路徑 04/27 00:21
8F:→ doun:恩 我是用g95 可能要研究一下path要怎麼設定 04/27 00:21
9F:→ doun:整個路徑是指? 04/27 00:23
11F:→ terryys:就是像c:\g95\g95 graetz.f 04/27 00:25
12F:→ doun:看來不是路徑問題 我執行時他出現的error是 04/27 00:38
13F:→ doun:Warning<108>:Array reference at <1> is out of bounds 04/27 00:38
14F:→ doun:感覺是B的值不能設0 04/27 00:42
15F:推 terryys:剛剛在win7裝了g95,也是這樣 但是warning只是警告,error 04/27 00:47
16F:→ terryys:才是最主要的 雖然這個warning也顯示了程式碼的小問題 04/27 00:48
17F:→ terryys:想解決這個warning就要把變數宣告那裡相關的陣列設成0:XXX 04/27 00:49
18F:→ doun:只不過這樣不能用g95 3.f -o dat的指令轉成執行檔 04/27 00:50
19F:→ terryys:有幾個變數需要這樣做,然後最下面是一個error,說陣列的 04/27 00:50
20F:→ terryys:index不可以用浮點數表示,所以需要把k變成整數 04/27 00:53
21F:→ doun:Rn那一項比較沒頭緒 04/27 00:55
22F:推 terryys:這份程式碼比較奇怪,fortran的陣列都是1開始的,但它寫的 04/27 01:00
23F:→ terryys:好像c一樣,當成是0開始了 04/27 01:01
24F:→ terryys:Error: Array index at (1) must be of INTEGER type 04/27 01:02
25F:→ terryys:你是說這個錯誤嗎? 04/27 01:02
26F:→ doun:那個解決了 是Rn裡 Array reference at <1> is out of bounds 04/27 01:04
27F:推 terryys:奇怪我看不見這個,但它確實是有問題,跟上面的一樣 04/27 01:07
28F:→ doun:OK 順利跑出結果了~ 感謝大大幫助^^ 04/27 01:10
29F:推 terryys:還有就是它以前拿k當浮點數的地方都要看看 k/100之類的 04/27 01:11
30F:→ terryys:要變成k/100.或者類似的才不會變成整數相除 04/27 01:11
31F:→ doun:只不過他跑完怎麼會馬上自動關閉@_@ 04/27 01:13
32F:推 terryys:在cmd裡運行就不會 04/27 01:17
33F:推 terryys:或者在最後的end前加上call system('pause') 04/27 01:21
34F:→ terryys:留意nqt也要加個0,不然最後那裡也會有問題 04/27 01:22
35F:→ doun:他一開始定義的5001是表示程式所能寫進最大的記憶數只有5001? 04/27 01:27
36F:推 terryys:是從1到5001的5001個數值,所以它想用第0個就可能有問題 04/27 01:33