zoukankan      html  css  js  c++  java
  • (1) fortran 中的数组

    1、数组片段

    Fortran中引用数组有三种方法:

    数组名         代表数组中的所有元素

    数组元素      代表数组中的某个元素

    数组片段      代表数组中的若干元素,可以是连续的,也可以是分离的

    1.1连续片段方法

    数组名(下标偶对),下标偶对表示下标的起始和终止位置。

    例如A(3:6)= 0;

    print * ,A(3:6)

    1.2 下标三元法,可以把不连续的元素组成数组片段。

    格式:数组名(e1:e2:e3)  ,其中e1表示起始下标,e2表示终止下标,  e3表示间隔(步长).

    e1省略时表示从下界开始,e2省略时表示到上界结束, e3省略时表示间隔为1。

    例如: A (10:30:2),A(:20:4),A(8::10)

    2、数组构成器及用途
    数组构成器是左右两端有 "(/" 和 "/)" 定界的同类型数据的集合。

    用途:可以代替DO循环的繁琐形式给数组赋初值,一般性赋值。

    例如:有数组A(1:4),A = (/1.1,2.2,3.3,4.4/), 则
    A(1)=1.1  ,  A(2)= 2.2  , A(3)=3.3  ,A(4)=4.4

    常见形式有
    (1)隐含DO法
    A = (/ (sqrt(I),I=1,4) /)
    (2)数组元素
    A = (/ v(3),v(5),v(6)  /)
    (3)数组片段
    A = (/ V(3:9:3)  /)

    3、数组的形式
    (1)常数组
    普通的数组
    (2)可调数组
    形式:
    可以在维界表达式中出现整型变量
    例如real,dimension(N:M)::C ,这里M,N是变量
    用处:只可以在子程序中作虚数组用,并且维界变量必须列入程序的虚元中。
    例如 subroutine sub(C,M,N)
         real , dimension(N:M)::C
    (3)假定形状数组
    形式:说明时不出现维界,只有冒号,例如:real, dimension(:)::C,(一维)或者real,dimension(:,:)::D,(二维)
    用处:只可以在子程序中作虚数组用,用于和实数组结合,结合后自动具有实数组的结构。

    (4)动态数组
    维界可以在程序执行过程中改变。
    使用步骤:
    a、说明:real,dimension(:),allocatable::AL1,AL2
    b、分配内存:allocate(AL1(M),AL2(6:N)).则AL1为AL1(1:M),AL2为AL2(6:N)
    c、用deallocate语句释放内存:deallocate(AL1,AL2)

  • 相关阅读:
    邮件发送的原理
    链接
    VS2010安装EntityFramework5.0
    asp.net mvc 使用Ajax
    图解WPF程序打包全过程
    MapReduce,DataJoin,链接多数据源
    Hadoop,MapReduce操作Mysql
    MapReduce,组合式,迭代式,链式
    下一代hadoop(Mapreduce),YARN/MRv2
    HBase 简介
  • 原文地址:https://www.cnblogs.com/liyanwei/p/1758290.html
Copyright © 2011-2022 走看看