sortval sortstrデータ 並替

 

データを並び替える
一次元配列に代入されたデータは容易に並び替えることができます。
並び替えのことをソートと言います。
並び替える順番を0から10のように増えていく順番昇順と言います。
逆に10から0のように減っていく順番降順と言います。


値の並び替え(整数型・実数型)
sortval命令を使用して一次元配列に代入された値をソートします。
一度sortval命令を実行すると、各配列要素の値は指定された昇順、降順に並び替えられています。
順番指定値は、0または省略で昇順、1で降順になります。
sortval 整数型・実数型の一次元配列変数名,順番指定値

順不同の得点が代入された整数型一次元配列変数をソートする
dim tokuten,10	//整数型変数「得点」を10の要素で一次元配列を宣言

//得点を順不同で代入
tokuten.0 = 78
tokuten.1 = 72
tokuten.2 = 69
tokuten.3 = 85
tokuten.4 = 88
tokuten.5 = 84
tokuten.6 = 79
tokuten.7 = 91
tokuten.8 = 74
tokuten.9 = 84

repeat length(tokuten)
	mes cnt	//配列数を表示
loop

pos 50,0	//表示位置を設定(右へ50の位置)
repeat length(tokuten)
	mes tokuten.cnt	//得点を添字順番に表示
loop

sortval tokuten,1	//得点を降順に並べ変える
pos 100,0	//表示位置を設定(右へ100の位置)
repeat length(tokuten)
	mes tokuten.cnt	//並べ替え後の得点を添字順番に表示
loop

命令名:sortval「一次元配列変数の値をソートする」
整数型・実数型の一次元配列変数名:tokuten「得点」
順番指定値:0「昇順」
変数名は必ず整数型・実数型の一次元配列を指定します。二次元配列以降はソートされません。
同じ値が複数存在するときは、昇順降順問わず添字の若番号の値が先に並びます。


文字の並び替え(文字列型)
sortstr命令を使用して一次元配列に代入された文字をソートします。
ソートの基準は各文字列の先頭の1文字です。
順番指定値は、0または省略で昇順、1で降順になります。
sortstr 文字列型の一次元配列変数名,順番指定値

さまざまな文字が代入された文字列型一次元配列変数をソートする
sdim iroha,14	//整数型変数「いろは」を14の要素で一次元配列を宣言

//いろは順に文字を代入する
iroha.0 = "い"
iroha.1 = "ろ"
iroha.2 = "は"
iroha.3 = "1"
iroha.4 = "2"
iroha.5 = "3"
iroha.6 = "1"
iroha.7 = "2"
iroha.8 = "3"
iroha.9 = "A"
iroha.10 = "b"
iroha.11 = "c"
iroha.12 = "伊"
iroha.13 = "呂"
iroha.14 = "八"

repeat length(iroha)
	mes cnt	//配列数を表示
loop

pos 25,0	//表示位置を設定(右へ25の位置)
repeat length(iroha)
	mes iroha.cnt	//いろはを添字順番に表示
loop

sortstr iroha
pos 50,0	//表示位置を設定(右へ50の位置)
repeat length(iroha)
	mes iroha.cnt	//並べ替え後のいろはを添字順番に表示
loop

命令名:sortstr「一次元配列変数の文字列をソートする」
文字列型の一次元配列変数名:iroha「いろは」
順番指定値:0「昇順」
変数名は必ず文字列型の一次元配列を指定します。二次元配列以降はソートされません。
順番はASCIIコードの順番を基準に昇順・降順にソートされます。

当サイトコンテンツの複写・転載・引用は禁止しております。