Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Function 几何级数的Fortran函数_Function_Fortran_Fortran90 - Fatal编程技术网

Function 几何级数的Fortran函数

Function 几何级数的Fortran函数,function,fortran,fortran90,Function,Fortran,Fortran90,我用Fortran函数实现这个等式。 函数(g)中的写调用始终返回6,但当我调用程序(z)中的函数时,输出取决于,例如。, -2123950080 -529463296 929961984 为什么g和z不一样?为了完成几何级数计算,我应该在函数中更改什么 函数系列(n) 隐式无 整数::i,n,g=0,x=1,几何级数 g=1+x i=2,n吗 g=g+x**i 结束 写入(*,*)g 返回 端函数几何级数 程序geomFunc 隐式无 整数::n=5,几何级数,z z=几何级数(n) 写入(

我用Fortran函数实现这个等式。

函数(g)中的写调用始终返回6,但当我调用程序(z)中的函数时,输出取决于,例如。, -2123950080 -529463296 929961984

为什么g和z不一样?为了完成几何级数计算,我应该在函数中更改什么

函数系列(n)
隐式无
整数::i,n,g=0,x=1,几何级数
g=1+x
i=2,n吗
g=g+x**i
结束
写入(*,*)g
返回
端函数几何级数
程序geomFunc
隐式无
整数::n=5,几何级数,z
z=几何级数(n)
写入(*,*)z
结束程序geomFunc

另外,理想情况下,我希望它是纯函数,因为我不知道它是如何产生副作用的,但还没有设法以这种方式编译它(为什么?)。

写入是一种副作用。变量g和x被保存,并且只初始化一次。我们有重复项。更重要的是,您没有为函数结果赋值
geomseries
g
不是一回事。Ups,是的,这实际上是直接的问题,链接的一个只会在第二次呼叫后出现。谢谢,分配geomSeries=g完成了这个任务!我是Fortran新手,我不知道函数只返回分配给函数名的内容,因为我习惯于用Python或R传递不同的变量以返回。写入是一种副作用。变量g和x只保存一次,并且只初始化一次。我们有重复项。更重要的是,您没有为函数结果赋值
geomseries
g
不是一回事。Ups,是的,这实际上是直接的问题,链接的一个只会在第二次呼叫后出现。谢谢,分配geomSeries=g完成了这个任务!我是Fortran新手,我不知道函数只返回分配给函数名的内容,因为我习惯于在Python或R中传递不同的变量来返回。