整列ライブラリ

十進BASICには,SORT1.LIBとSORT2.LIBの2つの整列ライブラリが附属しています。

SORT1.LIB

SORT1.LIBで定義された外部副プログラムsort(a())は,実引数として渡された1次元数値配列aを昇順に並べ替えます。
SORT1.LIBを使いたい場合は,ファイルメニューの「末尾に追加読込」でLIBRARYフォルダのSORT1.LIBを指定するか,プログラムの末尾に次のプログラム例の80行のようなMERGE文を付加します。

10 DECLARE EXTERNAL SUB sort
20 DIM a(10)
30 DATA 3,8,4,6,9,2,5,5,7,5
40 MAT READ a
50 CALL sort(a)
60 MAT PRINT a;
70 END
80 MERGE "SORT1.LIB"

<補足> 十進BASICの現在の実装では,10行のDECLARE文は省略可能です。

SORT2.LIB

SORT2.LIBで定義された外部副プログラムsort(m(),ix())は,mに指定された1次元数値配列の添字を1次元数値配列ixに配列の値が昇順となるように代入します。つまり,ixの最初の要素は,配列mにある数値のうち最も小さいものの添字です。配列mは参照されるのみで,変化しません。

100 DECLARE EXTERNAL SUB sort
110 DIM a(10),ix(10)
120 DATA 3,8,4,6,9,2,5,5,7,5
130 MAT READ a
140 CALL sort(a,ix)
150 FOR i=1 TO 10
160    PRINT a(ix(i));
170 NEXT i
180 END
190 MERGE "SORT2.LIB"


<Note>
MERGE文に指定するライブラリ名はファイル名です。Linuxなど,ファイル名に用いる英字の大小を識別するOSでは注意が必要です。


戻る