位置:首页 > 高级语言 > Fortran在线教程 > Fortran还原功能

Fortran还原功能

下表描述了还原功能:

函数 描述
all(mask, dim) 它返回一个逻辑值,指明掩码的所有关系是 .true。以及只有所需的维度,如果第二个参数是给定的。
any(mask, dim) 它返回一个逻辑值,指明掩码的任何关系是.true。以及只有所需的维度,如果第二个参数是给定的。
count(mask, dim) 它返回一个数字值,该值为掩码为 .true 关系的数目。以及所需的维数,如果第二个参数给出。
maxval(array, dim, mask) 它返回 的数组的数组中最大的值,那些遵守于第三个参数掩码的关系,如果一个给定的,以及具有只有所需的维数,如果第二个参数 dim给出的。
minval(array, dim, mask) 它返回数组的数组中那些遵守于第三个参数掩码的关系的最小值,如果一个给定的,以及具有仅在第二个参数 dim 给出所期望的维度。
product(array, dim, mask) 它返回该产品遵守于第三个参数掩码的关系,如果一个给定的,以及具有只有所需的维数,如果第二个参数 dim 给出的所有数组的数组中的元素,。
sum (array, dim, mask) 它返回 遵守于第三个参数掩码关系的总和,如果给定以及具有只有所需的维数,如果第二个参数 dim给出的所有数组的数组中的元素。

例子

下面的例子演示了这一概念:

program arrayReduction

   real, dimension(3,2) :: a 
   a = reshape( (/5,9,6,10,8,12/), (/3,2/) ) 
   
   Print *, all(a>5)
   Print *, any(a>5)
   Print *, count(a>5)
   Print *, all(a>=5 .and. a<10)
  
end program arrayReduction

当上述代码被编译和执行时,它产生了以下结果:

F
T
5
F

实例

下面的例子演示了这一概念:

program arrayReduction
implicit none

   real, dimension(1:6) :: a = (/ 21.0, 12.0,33.0, 24.0, 15.0, 16.0 /)
   Print *, maxval(a)
   Print *, minval(a)
   Print *, sum(a)
   Print *, product(a)
   
end program arrayReduction 

当上述代码被编译和执行时,它产生了以下结果:

33.0000000    
12.0000000    
121.000000    
47900160.0