練習問題

下のようなフォームを持つプログラムを作って下さい。

コンポーネントの Name プロパティは、次のようにして下さい。

コンポーネント Name
スピンエディット SpinEditNumber
ボタン「乱数発生」 Button

ボタンをクリックしたときの命令を、次のように書いてください。

解説

それでは、実行して動作を確かめてみてください。

5-11 関数(4)
random 関数―


☆ 総目次へ ★ 第5章目次へ ★ 前節へ ★ 次節へ ☆

☆ 『Delphi入門』 5−11関数(4)-random関数- ☆

Delphiでもそうでしたが、C++Builderが予め定義している関数でよく使うものに、random関数があります。random関数は、ランダムな数 (乱数) を返す関数です。
応用課題5-2

デモンストレーションをダウンロード

下のようなフォームをもつ、パネルの色が赤/青/黄にランダムに変わるカラースロットマシンをつくります。

色の変わるパネルは、「パネルコンポーネント」を使います。コンポーネントパレットの Standard タブにあるパネルを、フォームに3つ貼ります。



パネルの色を変えるには、Color プロパティの値を変えます。図の枠で囲った部分をダブルクリックするか、下向きの三角形をクリックして、左のパネルを赤に、中央のパネルを青に、右のパネルを黄色に変えてください。

パネルの色をランダムに変えるプログラムを書きましょう。色々な方法がありますが、例えば、0, 1, 2の乱数を発生させて、0のとき赤、1のとき青、2のとき黄にするようにしましょう。

ヒント:Panel1 の色を赤、青、黄色に変える命令は、それぞれ次のように書きます。

Panel1->Color = clRed;
Panel1->Color = clBlue;
Panel1->Color = clYellow;

最後に、色がそろったときには「大当たり!」、そろわなかったときには「はずれ!」のメッセージを出すのも忘れないでください。

基礎課題5-5

このようなフォームを持つプログラムを作って下さい。
    
ボタンを押すと3つのスピンエディットに0から99までの乱数を発生させるようにしてください。
    
基礎課題5-7 解答
応用課題5-1

デモンストレーションをダウンロード
このようなフォームを持つプログラムを作って下さい。
ボタンを押すと3つのスピンエディットに0から2までの乱数を発生させるようにしてください。
そして、3つの数がそろったら「大当たり!」と表示して下さい。
3つの数がそろっていないときは「はずれ!」と表示して下さい。
基礎課題5-1 解答
基礎課題5-2 解答
☆ 『Delphi入門』 5−11関数(4)-random関数- ☆

☆ 総目次へ ★ 第5章目次へ ★ 前節へ ★ 次節へ ☆



私の体験談
0,1,2の乱数を発生させることは簡単です。しかし、今回はPanelColor(色)を変えるのです。やったことないですよねぇ。ヒントを参考にしたてみましょう。もし乱数の数で0がでたときは赤、1が出たときは青と考えると、分岐処理が使えそうです。そして、指定する値も1つでいいのでここでは、switch文が使えるという道が開けてきます。このように、順を追って考えてみると、結構わかってきますよね。switch()の中の条件文にはrandomが入ります。