Swiftの乱数生成を完全ガイド!初心者でもわかるrandomの使い方
生徒
「Swiftで数字をランダムに出したいときって、どうすればいいんですか?」
先生
「Swiftには、最初から乱数を作るための便利な仕組みが用意されています。特別な準備をしなくても使えますよ。」
生徒
「パソコンをほとんど触ったことがなくても大丈夫ですか?」
先生
「もちろんです。サイコロを振る感覚で、順番に確認していきましょう。」
1. Swiftの乱数とは?
Swiftの乱数とは、毎回違う数字を自動で作り出す仕組みのことです。例えばサイコロを振ると一から六までの数字がランダムに出ますが、これと同じことをプログラムの中で行えます。ゲームの敵の動きを変えたり、抽選番号を作ったりする場面でよく使われます。Swiftでは「random」という仕組みが用意されているため、難しい計算を自分で考える必要はありません。
2. Int.randomを使った基本的な乱数生成
一番よく使われるのが整数の乱数です。整数とは、一、二、三のような小数点のない数字のことです。SwiftではInt.randomを使うことで、指定した範囲の数字を簡単に作れます。これは「この範囲から一つ選んでください」とSwiftにお願いしているイメージです。
let number = Int.random(in: 1...6)
print(number)
3
3. 範囲指定の考え方を理解しよう
乱数を作るときには「どこからどこまでの数字か」を決めます。これを範囲指定と呼びます。三点リーダーのような記号は、最初の数字から最後の数字まで全部含めるという意味です。例えば一から十までなら、くじ引きで十本の中から一本選ぶ感覚と同じです。
let lottery = Int.random(in: 1...10)
print(lottery)
4. Doubleを使った小数の乱数
Swiftでは小数の乱数も作れます。小数とは、一点五や二点三のような数字です。Doubleという型を使うことで、より細かい値を扱えます。例えば確率や割合を表したいときに便利です。これはメジャーで長さを細かく測るイメージに近いです。
let rate = Double.random(in: 0.0...1.0)
print(rate)
5. 配列と乱数を組み合わせる
配列とは、複数のデータを箱に入れて並べたものです。乱数と配列を組み合わせると、ランダムに要素を選ぶことができます。例えば今日の運勢をランダムに表示する場合などに使えます。箱の中から目をつぶって一つ取り出す感覚です。
let fortunes = ["大吉", "中吉", "小吉", "凶"]
let index = Int.random(in: 0..<fortunes.count)
print(fortunes[index])
6. 乱数が毎回変わる理由
プログラムを実行するたびに違う結果が出るのは、内部で時間などを元に計算しているためです。そのため同じコードでも結果が変わります。これにより、ゲームやアプリに動きや楽しさが生まれます。完全に同じ結果を防ぐための工夫だと考えると理解しやすいでしょう。
7. 初心者がつまずきやすいポイント
初心者の方がよく混乱するのが、範囲の書き方や配列の番号です。配列の番号はゼロから始まる点に注意が必要です。最初は不思議に感じますが、棚番号が零番から始まっていると考えると納得しやすくなります。慣れれば自然に使えるようになります。
8. Swiftで乱数を使う場面
Swiftの乱数生成は、ゲーム、学習アプリ、簡単な診断ツールなど幅広く使われます。難しい設定が不要で、短いコードで実現できるため、プログラミング未経験者でも扱いやすいのが特徴です。まずは数字を出すところから練習すると理解が深まります。
【超入門】ゼロから始めるGo言語プログラミング:最速で「動くアプリ」を作るマンツーマン指導
「プログラミングの仕組み」が根本からわかる。Go言語でバックエンド開発の第一歩を。
本講座を受講することで、単なる文法の暗記ではなく、「プログラムがコンピュータの中でどう動いているか」という本質的な理解につながります。シンプルながら強力なGo言語(Golang)を通じて、現代のバックエンドエンジニアに求められる基礎体力を最短距離で身につけます。
具体的な開発内容と環境
【つくるもの】
ターミナル(黒い画面)上で動作する「対話型計算プログラム」や、データを整理して表示する「ミニ・ツール」をゼロから作成します。自分の書いたコードが形になる感動を体験してください。
【開発環境】
プロの現場でシェアNo.1のVisual Studio Code (VS Code)を使用します。インストールから日本語化、Go言語用の拡張機能設定まで、現場基準の環境を一緒に構築します。
この60分で得られる3つの理解
「なぜ動くのか」という設定の仕組みを理解し、今後の独学で詰まらない土台を作ります。
データの種類やメモリの概念など、他言語にも通じるプログラミングの本質を学びます。
ただ動くだけでなく、誰が見ても分かりやすい「綺麗なコード」を書くための考え方を伝授します。
※本講座は、将来的にバックエンドエンジニアやクラウドインフラに興味がある未経験者のためのエントリー講座です。マンツーマン形式により、あなたの理解度に合わせて進行します。
初めてのGo言語を一緒に学びましょう!