XL Fortran for AIX V8.1.1

ランゲージ・リファレンス

qsort_

qsort_ サブルーチンは、 1 次元の配列 ARRAY に対して並列クィック・ソートを実行します。この ARRAY の長さ LEN は配列内のエレメント数であり、各エレメントの大きさは ISIZE です。また、このサブルーチンは、ユーザー定義のソート順序関数 COMPAR を実行して、配列のエレメントをソートします。 COMPAR 関数の必要事項については「AIX Technical Reference: Base Operating System and Extensions Volume 2」の『qsort サブルーチン』の項で説明されています。

INTEGER(4) FUNCTION COMPAR_UP(C1, C2)
INTEGER(4) C1, C2
IF (C1.LT.C2) COMPAR_UP = -1
IF (C1.EQ.C2) COMPAR_UP =  0
IF (C1.GT.C2) COMPAR_UP =  1
RETURN
END
SUBROUTINE FOO()
INTEGER(4) COMPAR_UP
EXTERNAL COMPAR_UP
INTEGER(4) ARRAY(8), LEN, ISIZE
DATA ARRAY/0, 3, 1, 2, 9, 5, 7, 4/
LEN = 6
ISIZE = 4
CALL qsort_(ARRAY(3:8), LEN, ISIZE, COMPAR_UP)
! sorting ARRAY(3:8)
PRINT *, ARRAY
! result value is [0, 3, 1, 2, 4, 5, 7, 9]
RETURN
END


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]