当前位置: > 关于Fortran语句的问题...
题目
关于Fortran语句的问题
do ir=1,maxtri
read(1,*) mat_number(ir),npotri(1,ir),npotri(2,ir),npotri(3,ir)
call atclxx(npotri(1,ir),x)
-------------------------------------------------------------
subroutine atclxx(node,x)
implicit real*8 (a-h),real*8 (o-z)
dimension node(1),x(2,1)
ax=x(1,node(2))-x(1,node(1))
ay=x(2,node(2))-x(2,node(1))
bx=x(1,node(3))-x(1,node(2))
by=x(2,node(3))-x(2,node(2))
主程序第二行中读取文件1中的4个值给四个变量
然后调用atclxx函数,只把npotri(1,ir)的值传递给了子程序,但为什么子程序的node里面会有npotri(1,ir),npotri(2,ir),npotri(3,ir) 三个值
注:x是一个点的横纵坐标,npotri(1,ir),npotri(2,ir),npotri(3,ir)分别是三角形的三个顶点

提问时间:2021-05-06

答案
你确定你的程序没有报错?
你这段代码前后矛盾.
首先你定义一个node(1),这是一个容量只有1个的一维数组,它根本不是数组就是一个数.
这从语法上来讲没什么错误,但是你在后面又用node(2),node(3),这就超出数组边界了.
再看数组x,本身是个二维的,但是你把第二维的容量定义成一位,那它就只能等效成一个一维数组了.
你确定你给的程序能正确编译出来?我猜测应该是用了use module 语句了吧,如果代码有点年代了可能是common 语句.这些语句都可以让数据在相应的程序间共享的,不需要通过地址传递.
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.