乱数とは何か?サンプルコード有り。プログラミングでよくある活用方法も紹介

ITリテラシー

プログラミングをやっていると、「乱数」という用語を目にすると思います。

今回はこの乱数について解説します!
サンプルコードや活用方法も紹介するので、今後のプログラミングの幅が広がりますよ。

目次

スポンサードリンク

乱数とは

ランダムな数値のことです。
ランダムとは、規則性がない、無作為な、手当たり次第、何が出るかわからないことを言います

たくさんのプログラミング言語がありますが、そのほぼすべてで乱数を作り出す関数が標準で用意されています。

参考までに、WEB系言語で人気の高いPHP・Ruby・Python・JavaScriptの乱数の作り方です。
このコードは、1〜10までの値をランダムで表示するサンプルコードです。
実際に動作を確認してみたい方は、paiza.IOなどで実行してみてください。

PHP

echo mt_rand(1,10);

Ruby

puts rand(1..10)

Python

import random
print(random.randint(1,10))

JavaScript

console.log(Math.floor((Math.random() * 10) + 1));

※JavaScriptでは、整数を返すためにrandomで得られた結果から、floorで小数点を切り捨てる必要あり。

ちなみに、コンピュータで表現できる乱数は『擬似乱数』と呼ばれ、完全なランダムではありません。

乱数を活用した実例

乱数を活用した実例を紹介します!

まずは私が作ったツールです。
GoogleフォームとGoogleスプレッドシートを使って、Twitter抽選ツールを作りました。

このツールでは、応募者の中からランダムで当選者をえらんでいます。
乱数を使ったシステムを作ってみたい方は、試してみてください。

他にも思いついたものを記載していきます。

  • カードゲームのカードシャッフル
  • RPGの敵とのエンカウント
  • FPSで打った弾のブレ
  • 麻雀の配牌
  • スマホゲームのガチャ
  • RDD(NHKが行っている世論調査の方法。ランダムで電話番号を発生させる)

などです。

ゲームのプログラミングでは特にランダムをよく使うと思います。
実際にゲームで乱数を使う時は、時間経過やユーザーのコントローラー操作の値と組み合わせたりして、乱数を作りだすようです。

他のシステムで使う機会はあまり多くありません。
私は業務系システムを開発する会社で10年近く働きましたが、仕事では1回も乱数は使いませんでしたね。

乱数の使い方

サンプルコードで1〜10の数値をランダムで発生されるコードを先程紹介しました。
これをプログラムの具体的にどこに使うかですが、、それは、
主に配列の添字に使うことが多いかと思います。

私の作ったTwitter抽選ツールも、配列の添字を乱数で作って、その中身を取り出します。
画像の例でいくと、乱数が「1」を返したら、『そば』を出すということですね。

他にもランダムで「今日の一言」を出したり、自分のブログからランダムで1記事ツイートする、といったこともできますね。

是非、自分の作ってるサービスに一工夫いれるのに使ってみてください。

以上、乱数とは何か、プログラミングでよくある活用方法を紹介しました!

スポンサードリンク

ITリテラシー・プログラミングのまとめ記事