fortran习题4答案fortran习题4答案.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
fortran习题4答案fortran习题4答案

工程分析程序设计 上机作业(五) 模块化编程 上机目的:掌握内部例程、主程序、外部例程、模块等功能的使用方法。 有一个六边形,求其面积。为求面积,作了3条辅助线。如图所示:(提示,三角形面积=,其中,a、b、c为三个边长)。要求用内部函数来计算每个三角形的面积。 program main implicit none real :: A(9)=(/10,30,16,13,21,14,20,36,28/) integer i real s s=area(A(3),A(4),A(7))+area(A(2),A(7),A(8))+ area(A(1),A(8),A(9))+area(A(5),A(6),A(9)) print*,The area is,s contains function area(x,y,z) implicit none real x,y,z real p,area p=(x+y+z)/2 area=sqrt(p*(p-x)*(p-y)*(p-z)) end function end 编写一个子例程子程序,SUM(S,T,N1,N2)。把整型数N1到N2进行求和,并把求和的结果放置到S,把整型数N1到N2进行求积,并把求积的结果放置到T。并用这个子程序来计算: program main implicit none integer A(8) integer i,b,c,d,e,f,g,m,n,y b=0;d=0;g=1;n=1 do i=1,8 A(i)=i end do call sum(b,c,1,4) call sum(d,e,3,8) call sum(f,g,3,6) call sum(m,n,1,3) y=b+d+g-n print*,y=(1+2+3+4)+(3+4+5+6+7+8)+(3*4*5*6)-(1*2*3)=,y contains subroutine sum(s,t,N1,N2) integer s,t,N1,N2,i do i=N1,N2 s=s+A(i) t=t*A(i) end do end subroutine end 编写函数子程序GDC求两个数的最大公约数。求最大公约数的算法如下:把两个数中大的那个数作为被除数,两数相除得到一个余数。把余数去除除数得到新一轮的余数。不断重复这一过程直到余数为0,这时的除数就是两个数的最大公约数。 调用此函数,求1260,198,72三个数的最大公约数。 program main implicit none integer a,b,c,m,n,temp print*,请输入三个数: print*,a b c read*,a,b,c if (ab) then temp=a a=b b=temp end if call GDC(a,b,m) if (cm) then temp=c c=m m=temp end if call GDC(m,c,n) print*,最大公约数为,n contains subroutine GDC(x,y,z) integer x,y,z,k do while(mod(x,y)/=0) k=mod(x,y) x=y y=k end do z=y end subroutine end 编写一个模块程序,提供以下服务:定义出常量(、e。定义出子程序,实现求和、求阶乘n!。并在主程序中计算如下结果:从键盘上输入整数n、实型数A、R、R0,求(实型)和(实型)。 module mytask implicit none real,parameter :: PI=3.1415926 real,parameter :: e =2.7182818 contains function sub(n) integer i,n,sub sub=0 do i=1,n sub=sub+i*i end do end function sub function fact(n) integer i,n real fact fact=1 do i=1,n fact=fact*i end

文档评论(0)

pfenejiarz + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档