広告スペース(バナー)
💎Ruby レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 53 / 68
乱数を生成しよう
このレッスンでは、randとArray#sampleを使った乱数の生成方法を学び、サイコロやくじ引きのようなプログラムを作れるようになることを目標にします。「Ruby 乱数 生成」で調べている方向けです。
rand()やArray#sampleを使うと、ランダムな数や、配列からランダムに1つ選んだ値を得られます。サイコロやくじ引きのようなプログラムを作るときに使います。実行するたびに結果は変わります。
サンプルコードでは、rand(1..6)で1から6までのサイコロの目を、choices.sampleで「グー・チョキ・パー」のリストからランダムに1つ選んでいます。rand()に範囲(1..6)をそのまま渡せる、直感的な書き方に注目してみましょう。
初心者がよくつまずくのが、rand(6)とrand(1..6)の違いです。範囲を指定せずrand(6)とすると0から5までの整数が返るため、1から6までのサイコロの目がほしい場合は範囲指定(1..6)を使うのが正確な書き方です。
SecureRandomという、より予測困難な乱数を生成する仕組みも標準ライブラリに用意されています。ゲームのシャッフル機能やシミュレーションのサンプリングなど、実務でも幅広く活用される機能です。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではRubyを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
サイコロやくじ引きのような、簡単なランダム要素のあるミニゲームが作れるようになります。
サイコロやくじ引きのような、簡単なランダム要素のあるミニゲームが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)