网站大量收购独家精品文档,联系QQ:2885784924

fortran第7章2讲课讲稿.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
fortran第7章2; Fortran90提供了丰富的数组操作函数,但它们的函数值可以是数组,但不一定全是数组。 (1)函数值个数≥2,函数值一定为数组 (2)函数值个数=1,一般函数值不是数组, 但maxloc、minloc、shape函数值是数组 ;INTEGER,DIMENSION(1:2,1:3)::A ;例1:阅读下列程序,写出运行结果 PROGRAM main IMPLICIT NONE INTEGER,DIMENSION(2,3,2)::M INTEGER,DIMENSION(2,2)::S M=RESHAPE((/1,2,3,4,5,6,7,8,9,1, 2,3/),(/2,3,2/)) S=SUM(M,2,MASK=M3) PRINT*,S END ;练习1:阅读下列程序,写出运行结果 PROGRAM main IMPLICIT NONE INTEGER,DIMENSION(2,-1:1,2)::a INTEGER::i a= RESHAPE((/(i, i=1,12)/),(/2,3,2/)) print*, sum(a,3) end;例:INTEGER,DIMENSION(2,3)::A size(a) size(a,DIM=1) size(a,2) ;例: INTEGER,DIMENSION(2,3)::A MAXVAL(A) MAXVAL(A,2) MAXVAL(A,1,MASK=A2);例:INTEGER,DIMENSION(2,3)::A INTEGER,DIMENSION(2)::B A= RESHAPE((/1,2,6,3,4,5/),(/2,3/)) B=MAXLOC(A,A4) 例:INTEGER,DIMENSION(2,3)::A INTEGER,DIMENSION(3)::B A= RESHAPE(/1,2,6,3,4,5/,(/2,3/)) B=MAXLOC(A,1) ;INTEGER,DIMENSION(0:2)::A INTEGER,DIMENSION(1)::B A= (/1,2,6/) B=MAXLOC(A) PRINT*,B END ;7、 PRODUCT (数组名[,DIM=n][,MASK=数组逻辑表达式]) 求数组各元素之积 注意:没有满足MASK条件的元素时,结果为1 MASK=可省略不写 例如:PRODUCT(A, 2, A3) ;8、 shape (数组名) 求数组的形状 形状:各维维长的序列 判定维数,求各维维长d2-d1+1 函数值为数组 ;练习2:阅读下列程序,写出运行结果 IMPLICIT NONE INTEGER,DIMENSION(0:1,-1:1,2)::M INTEGER,DIMENSION(3)::A M=RESHAPE((/1,2,3,4,5,6,7,8,9, 1,2,3/),(/2,3,2/)) A= SHAPE(M) PRINT*,A END;例2:阅读下列程序,写出运行结果 PROGRAM MAIN IMPLICIT NONE INTEGER,DIMENSION(3)::M INTEGER,DIMENSION(1)::A M=(/1,2,3/) A= SHAPE(M) PRINT*,A END;练习3:阅读下列程序,写出运行结果 PROGRAM main INTERFACE SUBROUTINE S(b) INTEGER,DIMENSION(:,:)::b END SUBROUTINE ENDINTERFACE INTEGER,DIMENSION(2,3)::a a=RESHAPE((/1,2,3,4,5,6/),(/2,3/)) Call s(a) End SUBROUTINE S(b) INTEGER,DIMENSION(:,:)::b Print*,shape(b); End;9、 DOT_PRODUCT (数组名1, 数组名2) 求两个同形状的一维数组(向量)的点积 点积: REAL,DIMENSION(3)::a REAL,DIMENSION(0:2)::b DOT_PRODUCT (a,b): a(1)*b(0)+a(2)

文档评论(0)

139****0999 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档