十二歩目 コンピューターが迷うとき
〜乱数を使う〜
「コンピューターが迷う」 こんなことがあるのだろうか?
例えば 「コンピューターには 恋人Aと恋人Bがいて
どっちに告白しようかとか」 まあそんなことはないか
コンピューターの くせに ふたまたかけてるよ(^^;
とまあこういうことで(どういうことだよ)
乱数(らんすう)というものを勉強しましょう
乱数を使うには rnd という関数を使います
とある人・・・「乱数ってなんだよ」
乱数とは・・・その時の通り 乱(みだれる) 数(かず)
乱れる数なのだ ・・・つまり・・・
どうなるか 何になるか分からないということ
使ってみよう
r=rnd(3) if r=0:a="rは0" if r=1:a="rは1" if r=2:a="rは2" print a stop |
乱数を使うと簡単だわ(^^)
どういうことか rnd関数は指定した数までの 適当な数字を答えてくれます
r=rnd(3)だと 「 r という変数に3までの数字を入力する 」っていみで
0、1、2 のどれかになります
if r=0:a="rは0" というのは rが0だったら a に 「rは0」 (rは0か1か2になる)
という文を入れるのだ
これは次のページでやることなので 難しく考えなくていい
で print a で a の中身(変数に入力されたもの)
を表示して終わる
これで変数は終わりだな
とある人・・・「1つ問題が」
僕・・・「なんだ」
とある人・・・「何回やっても 同じ数字になるんですが・・・」
あ! そうでした そうでした 乱数を使うには
もう1つ おぼえないといけないものがあった
〜乱数のパターンの初期化〜
randomize これが無いと ダメなんだなあ
どうしても コンピューターに 「適当な数字を出せ」といっても パターンが出来てしまう
そこで randomize の出番だ!
これには 「乱数のパターンを初期化する」という能力(のうりょく)がある
難しい言い方だが 簡単に言うと
「rndで作る乱数を もっとばらばらにする」
この命令が rnd より先に実行されたら
もう誰も予測不能(よそくふのう)な 乱数が作れる
じゃあやってみよう
randomize r=rnd(3) if r=0:a="rは0" if r=1:a="rは1" if r=2:a="rは2" print a stop |
もうこれで完璧(かんぺき)
じゃあ今度は 乱数を使って作るゲームで
「おみくじ」を作ってみよう
screen 0,300,200 cls 4 wait 100 randomize ran=rnd(4) if ran=0:mozi="大吉" if ran=1:mozi="中吉" if ran=2:mozi="小吉" if ran=3:mozi="凶" color 200,0,200 font "MS 明朝",20,3 print "あなたの運勢は"+mozi+"です" stop |
もお 超ー 簡単に説明するぞ!!!
screen で ウインドウのサイズを調節
cls で 背景を 黒で塗りつぶす
すぐ おみくじが出ては面白くないので wait で待つ
randomize で乱数を初期化(しょきか)して
rnd でran に4種類(0,1,2,3)のどれかを入力
if でその ran に 入力された数字によって 大吉か凶か
見分ける
color
200,0,200 で 紫っぽい色
font
"MS 明朝",20,3 でMS 明朝で
サイズ 20の スタイル 3(詳しくは「文字の飾りつけ」)で
print
"あなたの運勢は"+mozi+"です" で
あなたの運勢は???です と表示する
これの使い方は次のページで
こ・ん・か・い・の まとめ rnd()・・・rnd(?) の?の所で指定した数字までの適当な数字を答える関数 r=rnd(100) randomize・・・rndで作る変数をさらにばらばらにする というかこれが無いとrndも使えない randomize |