早教吧作业答案频道 -->其他-->
关于fortran6.PROGRAMMAIN2N=3Y=(SUM(N)+SUM(N+1)+SUM(N+2))/(SUM(N+3)+SUM(N+4))WRITE(*,*)‘Y=’,YENDFUNCTIONSUM(X)INTEGERXSUM=0DO10I=1,XSUM=SUM+I10CONTINUEEND不管怎么运行上面总是提示Error:Anarray-valuedargumentisrequiredin
题目详情
关于fortran6.
PROGRAM MAIN2
N=3
Y=(SUM(N)+SUM(N+1)+SUM(N+2))/(SUM(N+3)+SUM(N+4))
WRITE (*,*) ‘Y=’,Y
END
FUNCTION SUM(X)
INTEGER X
SUM=0
DO 10 I=1,X
SUM=SUM+I
10 CONTINUE
END
不管怎么运行 上面总是提示 Error:An array-valued argument is required in this context.[SUM]
Y=(SUM(N)+SUM(N+1)+SUM(N+2))/(SUM(N+3)+SUM(N+4))
这是什么原因
但是我在上面程序里加了一句 REAL SUM(7) 上面没有错误 但是却得不到结果
PROGRAM MAIN2
N=3
Y=(SUM(N)+SUM(N+1)+SUM(N+2))/(SUM(N+3)+SUM(N+4))
WRITE (*,*) ‘Y=’,Y
END
FUNCTION SUM(X)
INTEGER X
SUM=0
DO 10 I=1,X
SUM=SUM+I
10 CONTINUE
END
不管怎么运行 上面总是提示 Error:An array-valued argument is required in this context.[SUM]
Y=(SUM(N)+SUM(N+1)+SUM(N+2))/(SUM(N+3)+SUM(N+4))
这是什么原因
但是我在上面程序里加了一句 REAL SUM(7) 上面没有错误 但是却得不到结果
▼优质解答
答案和解析
呵呵.
SUM函数是Fortran的一个内部函数,作用是求一个数组所有元素的和.因此要求SUM(X)的参数X必须是一个数组,不能是一个数.因此楼主的程序会提示:
Error: An array-valued argument is required in this context. [SUM]
你程序中前N个自然数求和函数和Fortran内部函数重名了,且未对该函数进行声明,Fortran是按照它内部的函数运行的.
解决方法:
1、把你的前N个自然数求和函数改成别的名字,如SUM2
2、如果你实在不想改函数名字,要在PROGRAM MAIN2后面加上一句SUM函数的声明:
EXTERNAL SUM
3、楼主编程的习惯好像不太好啊,变量和子函数都没有声明类型,开头也没有IMPLICIT NONE
SUM函数是Fortran的一个内部函数,作用是求一个数组所有元素的和.因此要求SUM(X)的参数X必须是一个数组,不能是一个数.因此楼主的程序会提示:
Error: An array-valued argument is required in this context. [SUM]
你程序中前N个自然数求和函数和Fortran内部函数重名了,且未对该函数进行声明,Fortran是按照它内部的函数运行的.
解决方法:
1、把你的前N个自然数求和函数改成别的名字,如SUM2
2、如果你实在不想改函数名字,要在PROGRAM MAIN2后面加上一句SUM函数的声明:
EXTERNAL SUM
3、楼主编程的习惯好像不太好啊,变量和子函数都没有声明类型,开头也没有IMPLICIT NONE
看了 关于fortran6.PRO...的网友还看了以下:
2.下列说法正确的是()A.3是9的算术平方根B.±4是16的算术平方根C.-6是(-6)²的算术 2020-04-11 …
access中Me!Text1.Valuc=sum是什么意思? 2020-05-17 …
product-over-sum是什么意思?这是在求解并联阻抗时遇到词汇搭配.请指教.没错,是这个 2020-05-19 …
java答案是什么?Toaddnumbertosum,youwrite(Note:Javaisca 2020-06-06 …
/\d{6}//^[0-9]{6}$//d{6}//\d{6}$//\d{6}//^[0-9]{6 2020-06-12 …
sum是和那差,积,商用英语怎么表示呢? 2020-06-14 …
引用求和:AC==SUM(C9*$C$7*$C$6,D9*$D$7*$D$6,E9*$E$7*$E 2020-07-09 …
mathematica中的sum运算问题,a=1/n^2Sum[kk,{n,1,Infinity} 2020-07-21 …
下面集合那个可以做一有向线段的方向角的是A.(0,π/6,5π/6)B.(π/6,π/4,π/3) 2020-08-02 …
请问谁知道用matlab求解多元超越方程组的方法或思路或函数不?形如:a*(1+a+a^3+d+d^ 2020-12-14 …