©ひょうすべ
 

  • うちわのお部屋

    たわごと」・「こうさぎ(BlogPet)専用」・「ブログパーツ置き場」は、全ページリンクフリー。連絡無しで勝手にリンクOK。
    動画・画像(イラスト・写真など)・文章の複製などは、一部分でも不許可
  • なつゲー猫写真
  • 楽天市場関連リンク

« 投票に行ってきた | トップページ | 楽天のラッキーくじは色々あるけれど »

数字の並べ替え

順番に並んでいる数字をランダムに並び替えるのを、大昔のBASICプログラム風に書くと下のようになる。
下は、1から10までの数字をランダムに並び替える場合。

10 randomize:dim a(10)
20 for i=0 to 9
30 a(i)=i+1
40 next i
50 for i=0 to 9
60 x=int(rnd*9)
70 if x>=i then x=x+1
80 n=a(i):a(i)=a(x):a(x)=n
90 next i

BASICの仕様によって細かい書式が違ったりするんだけど、まあ大体上のようなもんだろうなと(^_^;)。
やってる事は単純なので、見ればわかるだろう。
私が作ったビンゴでは、上のような事をHSPでやってるわけだ。
で、配列の数字を順番に表示しているだけ。
たまに初心者が、ただ数字をランダムに選んで表示するというプログラムを組んだりする。
そういうのでは、同じ数字が2回出てきたりする。
出てきた数字をチェックするために配列を使おうとして、配列を使うなら並び替えればいいじゃないかと気づくという流れになるのが普通ではないかな。
私は大昔、そうだった(^_^;)。

« 投票に行ってきた | トップページ | 楽天のラッキーくじは色々あるけれど »

説明のようなもの