[問題] 請FORTRAN高手幫幫忙?

看板Fortran作者 (alan93702)時間11年前 (2013/05/23 23:50), 編輯推噓1(109)
留言10則, 4人參與, 最新討論串1/1
想請教如果假設我現在有個矩陣K(10)內值是{0,11,0,15,0,0,30,0,100,0},那我希望取15 減11,加100減30的值,而每次讀這K(10)內的值都不一定,簡單說就是想取中間都為0兩數 之間的差距總和,但算過的值不在重複算,矩陣內值必定有偶數個不為零的數,且兩兩一 對,這樣要怎麼寫呢? 還有另一個問題,我把我的矩陣寫成可調矩陣K(n),讓程式碼可以應用在不同比數的資料 上,但我有沒有辦法在讀檔時,讀到沒值時自己停,現在我得自己先輸入資料比數讓他讀, 但我希望我不用自己輸入資料比數,他迴圈讀檔時自己知道資料比數是多少自己停要怎麼 做呢? 新手發問,有什麼犯錯可以教導一下。謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.121.216.24

05/24 01:43, , 1F
1.我想到的方法是去除0的數值剩下的再兩兩相減後做加總
05/24 01:43, 1F

05/24 09:20, , 2F
恩我試過把它非零寫到檔案,在計算在讀出來算。
05/24 09:20, 2F

05/24 09:21, , 3F
1.是邏輯跟數學自己解 2.加入.not.eof(file number)判斷
05/24 09:21, 3F

05/24 09:22, , 4F
但每次比數不同,使我回圈讀取到矩陣不知要讀幾次
05/24 09:22, 4F

05/24 09:33, , 5F
可以問一下.not.eof(file number)試什麼意思嗎?
05/24 09:33, 5F

05/24 09:34, , 6F
或者書上哪裡找的,新手問題有點多抱歉,謝謝你。
05/24 09:34, 6F

05/24 14:25, , 8F
data進記憶體之後寫個function做一次抓兩個非0整數
05/24 14:25, 8F

05/24 14:26, , 9F
回傳相減值你在主程式做個迴圈call他加總就好了
05/24 14:26, 9F

05/24 17:26, , 10F
讀到沒值,在OPEN那裏用end=數字,就好了
05/24 17:26, 10F
文章代碼(AID): #1HdZh5ci (Fortran)
文章代碼(AID): #1HdZh5ci (Fortran)