- 387 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 19:34:55 ]
- >>198 今更ながらありがとう。
結局ループになってしまったけど…… 一応、該当があれば別のサブルーチンに飛んで、無い場合は最も近い配列の場所を見つけ出すようにしたつもり 既に配列(@hai)を取り込んであって $in が入れたい内容。 $min = 0; $mid = 0; $max = $hairetu - 1; # $hai〜は取得した配列の個数 if($max != 0 and $max != -1) { while ($min <= $max) { $mid = int(($min+$max)/2); $space = $max - $min; if($space == 2) { last; } elsif ($space == 3 ) { if ($hai[$mid] >= $in) { last; } else { $mid += 1; last; }
|

|