[問題] 請教有關讀取矩陣中最大值的位置

看板Fortran作者 (科科)時間14年前 (2010/08/21 00:29), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串1/1
小弟最近在用FORTRAN寫遺傳演算法,目前想作的事情是 我有一個一維矩陣A,我想讓程式找出矩陣A中最大值的位置 ,例如:矩陣A為1,5,9,3,8,13,11,2,共八個數字,我想得知最大值 13在這一維矩陣A中的位置,在這舉例當中是第六個,但卻不知道怎弄? 小弟有看書找到這個指令maxloc,書上是說可以讀到矩陣中最大值的位置 ,並傳回一個整數值,因此小弟就寫了location = maxloc( A )此行指令 location宣告為integer,A矩陣宣告為real(kind=8), compile後出現error: --------------------Configuration: 0821 - Win32 Debug-------------------- Compiling Fortran... C:\FORTRAN\MSDEV98\MyProjects\0821\0821.f90 C:\FORTRAN\MSDEV98\MyProjects\0821\0821.f90(425) : Error: The shapes of the array expressions do not conform. [LOCATION] location = maxloc( area ) ^ Error executing df.exe. 0821.obj - 1 error(s), 0 warning(s) 麻煩板上高手幫我一下,感激不盡!謝謝!! -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.184.167.206

08/21 00:40, , 1F
/maxloc
08/21 00:40, 1F

08/21 17:27, , 2F
integer location(1)
08/21 17:27, 2F

08/21 19:27, , 3F
感謝M大的幫忙,小弟剛試過之後發現OK,謝謝您!!
08/21 19:27, 3F
文章代碼(AID): #1CRgrf4W (Fortran)
文章代碼(AID): #1CRgrf4W (Fortran)