この章ではswitch文で占いを作成します。
占いは毎回同じ判定では変なので、結果はランダムになるようにします。
rand関数は0か32767までの数字の中でランダムな数を返しますが、範囲を限定したい場合には例えば
0から6までの数値をランダムに返したいのならば
しかし、このrand関数だけではプログラムを何回実行しても同じ結果にしかなりません。
これは乱数を初期化していないからです。
この乱数を初期化するにはsrand関数を使います。
つまり、乱数に使う初期値を変える関数です。
例えばsrand(1)と書くと初期値が1、srand(2)と書くと初期値が2の乱数を導き出すことが出来ます。
では試しに
結果は以下の通りですが、1回目の結果と同じです。
rand関数はランダムに数値を導き出してくれますが、乱数になるのは1回だけです。
次の例は先ほどの例にsrand(6)を追加しただけです。
そこでsrandの引数に
この中のtimeはtime関数で、1970年1月1日0時0分0秒からの経過時間を返します。
ですのでtime関数をsrandの引数に使うことで、その瞬間の時刻が引数に入りますので、その都度違う数値を引数に与えることができます。
time関数の引数はNULLにします。
time関数を使う時には
ransuuには0から6までの数値がランダムに入るので、それをswitch文で判断して、unsei変数に代入しています。
それを最後に出力します。