[ ロト6シミュレータ その5 ]

※途中で戻りたい場合は、ブラウザの「戻る」機能を使ってください。

書き直してみる

今まで作ったプログラムの流れが、うまく行っていないことで、一から書き直してみる事にしました。

考えたのですが、このまま修正をして行こうと言うよりも、アルゴリズムから考え直したほうがいいのでは?と思えたのです。

今まで作った(短いですが)プログラムに未練はあるのですが、ここで躊躇しているわけには行きません(実際には躊躇してしまいましたが・・・)。

こんなリストにしてみました。


インデントなどはいい加減ですが、まず添え字を B とかにしないで、 I から J 、 K としていく方が見やすいとの指摘を受けましたので、その様にしました(以後そうしていくつもりです)。

プログラムリストを簡単に説明しますと、

配列変数を指定した後に、 1 から 42 までの数字をランダムに取り出します。

その後ですが(40行から)、配列変数の中身を順番にチェックする為に添え字 J を 0 から 5 までシフトしていき(0、1、2、3、4、5)、ランダムに取り出した A と同じならもう一度ランダムの数字を取り出しようにして、違ったらその配列変数の中身が空きかどうかをチェックします( 0 かどうか調べる)。

空きならループを抜けて配列変数に代入して、その数をPRINT文で表示。空いていなければ、添え字 J をシフトして再びチェック(FOR NEXT文)。

ループ(40行から60行のFOR NEXT文)を抜けた回数が6回なら( 0 から 5 まで)終わり。

とこんな感じで打ち込んでみました。

結果です。


何回か繰り返しましたが、 1 から 43 までの数字でダブらずに6個ランダムに選ばれています。

ああ、やっと出来た・・・・!?

次章では、これらの数字を昇順に(小さい順)に並べ替える事にします。

結構引っ張ります。

 

Copyright(C) 2006. ピコピコテクノロジー All Right Reserved.