080230911      鈴木優史
(基セミ課題)
[Fortran90の特徴]
(新設された機能)   ◇◇ はHTML講義ノート中の各項目へのリンクで す。

(1) 並列計算など配列演算の強化
   例
    ◇同じ形状の配列aとbの要素間の演算結果を要素とする配列:a+b, a*b など
    ◇配列要素の関数値を要素とする配列:ABS(a), SQRT(a), INT(a) など
    ◇マスク式:例 配列aの正の要素の位置で真,それ以外では偽の論 理配列 a>0
    ◇配列の部分配列: a(1:100)のとき,a(1:50), a(1:100:2) など
    ◇添字を要素とする整数配列bによるaの部分配列の指定    a(b)
     ◇豊富な配列関数:例 配列aの要素の和 = SUM(a),aの形状 = SHAPE(a) など

(2) 配列の動的割り当ての方法◇

     例  INTEGER, ALLOCATABLE :: point(:,:)
     .......
     max_x=4096 ; max_y=2048
         ALLOCATE( point(1:max_x, 1:max_y) )

(3) 数値データの精度のパラメータ指定◇
   これにより異なるシステム間の移植の際の不都合がなくなった。

   例 INTEGER, PARAMETER :: p = SELECTED_REAL_KIND(12)
          REAL(KIND=p) :: x(1:1024), y(1:1024), z(1:1024)
           12 は有効数 字桁数。システムの内部表現に応じて最適な
      実数型が確保される。

(4) DOループの構文化◇
   DO ... END DO の構文形式になり,終端文番号が必要でなくなった。
   条件選択による分岐に,◇EXIT, ◇CYCLE, ◇WHILE などを新設

 ※ これにより,GOTO文を全く使用せずにプログラムが書けるようになっ た。
   また,文番号も必要としないが,新たにラベルを使用しなければなら ない
   場面が出てきた。◇

(5) 副プログラム関係
    ◇内部手続きの新設:これを使うと配列を返す関数なども定義可能 になる。
    ◇再帰呼び出し
    ◇キーワード引数と引数のオプション指定
    ◇引数の入出力特性指定
    ◇関数値を返すRESULT変数

(6) 構造型データの新設◇

(7) ポインタの新設◇

(8) モジュール副プログラム
   ◇変数宣言の共有化
   ◇ユーザ定義演算子
   ◇ユーザ定義代入文など

(9) その他
   ◇自由形式コーディングの導入
   ◇変数英字名の拡張(長さと下線の追加)
   ◇文字定数定義に" "型を追加
   ◇型宣言でデータの属性指定
   ◇SELECTE CASE 構文
   ◇DO型配列要素
   ◇文のラベル
   ◇WHERE文
   ◇「暗黙の型宣言」の無効化宣言
   ◇関係演算子の記号化
   ◇配列組込関数の補充
   ◇文字型組込関数の補充

参考ページ:http://www.media.kyoto-u.ac.jp/htomita/f90.html