fortran的函数变量问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fortran的函数变量问题相关的知识,希望对你有一定的参考价值。

program main implicit none logical ,external :: fun integer i,j do i=20,30,2 do j=2,i-1 if(fun(j).and.fun(i-j).and.j<(i-j)) then write(*,*) i,"=",j,"+",i-j exit end if end do end do pause end program main function fun(a) result(ret) implicit none integer a logical ::ret integer i integer ::temp 就是这个地方如果 我改为 integer :: temp=0 并且省略下一行 函数重复调用时 temp的值在累加 为什么啊 temp=0 ret=.false. do i=1,a if(mod(a,i)==0) then temp=temp+1 end if end do if(temp==2) then ret=.true. end if end function fun

参考技术A 如果在子程序中定义变量时同时赋初值,则程序认为该变量是save属性

fortran关于数组内部函数的问题

fortran关于数组内部函数的问题
这个是什么错误,数组内部求和函数要怎么用,图中程序应该怎么改

sum函数用法错误,fortran中自带数组求和函数SUM。传入的变量应该是数组的某一段值。也就是说二维数组A(5,3) 求和时要写成sum2 = sum(A(1:5,1:3)). 参考技术A sum2 = sum( A ) 参考技术B 没有sum这个函数。 自己编一个吧。

以上是关于fortran的函数变量问题的主要内容,如果未能解决你的问题,请参考以下文章

CUDA FORTRAN:如果我传递变量而不是数字,函数会给出不同的答案

FORTRAN中如何定义全局变量

fortran关于数组内部函数的问题

Fortran 释放 x 函数

什么是fortran函数

fortran acos 函数参数稳健性