SORT - [一般] |
||||||
… 配列内の要素を並べ替え
SORT 配列,開始,終了,カラム,方向
配列: 並べ替える配列
開始: 並べ替えの対象とする配列内の開始位置
終了: 並べ替えの対象とする配列内の終了位置
カラム: 並べ替える2次元配列の要素の番号
方向: 0(昇順)、1(降順)
配列の要素を並べ替えます。コマンド中に指定した配列が、そのまま書き換えられます。
配列の要素の中から、並べ替えの対象とする範囲を指定できます。配列の全要素を並べ替える場合は、開始に0、終了に配列の要素数(=DIM文で指定した値+1)を指定します。
2次元配列の場合、並べ替えの基準とする要素を指定できます。
DIM A(2,2)
A(0,0)=2,あ,C
A(0,1)=3,う,A
A(0,2)=1,い,B
という2次元配列では、
SORT A,0,3,0,0 - 1番目の要素(数字)
SORT A,0,3,1,0 - 2番目の要素(ひらがな)
SORT A,0,3,2,0 - 3番目の要素(英字)
で、それぞれ並べ替えることができます。
※コマンドの仕様、またはリファレンスの記載内容が、今後変更される可能性があります。(2002.10.12)
要素数以下のパラメータは省略できます。省略した場合は、並べ替えの対象は開始位置以降の全要素、カラムは1番目、方向は0(昇順)になります。
(サンプル 1)
REM 944BASIC 'ソート(並べ替え)サンプル'
DIM A(5)
A(0)=8,6,0,2,4,7
PRINT '8,6,0,2,4,7の真ん中6,0,2,4をソート'
SORT A,1,5
FOR I=0 TO 5
PRINT A(I)
NEXT I
A(0)='う','あ','ん','い','お','え'
PRINT 'う,あ,ん,い,お,えの全体をソート'
SORT A,0,6
FOR I=0 TO 5
PRINT A(I)
NEXT I
KEYWAIT
(サンプル 2)
REM 944BASIC '多次元配列のソート'
DIM A(2,2)
A(0,0)=3,'B','あ'
A(0,1)=1,'A','う'
A(0,2)=2,'C','い'
FOR I=0 TO 2
SORT A,0,2,I,0: REM 第I列でソート
M=STRCAT('配列の',I,'列目でソート')
PRINT M
FOR J=0 TO 2
FOR K=0 TO 2
PRINT A(K,J);: PRINT '-';
NEXT K
PRINT ' '
NEXT J
NEXT I
KEYWAIT
SORT - [一般] |