我是FORTRAN初学者,想得出一个二维数组中的最大值,说是可以用MAXVAL函数,具体在怎么用了,求解

有一个二维数组A(I,J),欲得出其中的最大值,并输出... 有一个二维数组A(I,J),欲得出其中的最大值,并输出 展开
 我来答
huzi233
2012-03-24 · TA获得超过400个赞
知道小有建树答主
回答量:291
采纳率:100%
帮助的人:281万
展开全部
使用FREE FORMAT格式:
注释:L和M分别是输入数组的行数和列数,AA是输入的二维数组,ANS是得到的该二维数组的最大值。这个名为MAXAA的子例程是先将二维数组AA的数字存入一个一维数组中,再使用选择法排序,得到的最大值存入ANS中。所有的实数变量都是双精度的。
SUBROUTINE MAXAA(L M, AA, ANS)
IMPLICIT NONE
!!!!!! VARIABLES
INTEGER :: L, M, I, J, K, N
REAL*8 :: AA(L, M), A(N), ANS
!!!!!! CALCULATION PROCESS
!!! TRANSFERING THE TWO-DIMENSIONAL ARRAY
N = L * M
DO I = 1, L
DO J = 1, M
A((I-1)*L+J) = AA(I, J)
ENDDO
ENDDO
!!! SORTING THE MAX NUMBER
DO I = 1, N-1
DO J = I+1,N
IF (A(J) > a(I)) THEN
T = A(I)
A(I) = A(J)
A(J) = T
ENDIF
ENDDO
ENDDO
!!! GET THE MAX NUMBER
ANS = A(1)
END SUBROUTINE
风之影武士
推荐于2018-05-29 · 超过10用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:37.9万
展开全部
一楼 在说什么呢
如果 想得到一个值
直接maxval(A)
fortran程序
do i=1,n
do j=1,n
if A(i,j)>temp then
temp = A(i,j)
endif
end do
enddo
输出 temp
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式