カテゴリ: Ruby 更新日: 2025/12/02

Rubyでべき乗・剰余・商と余りを理解する!**・%・divmodの実用サンプル

べき乗・剰余・商と余り:**・%・divmod の実用サンプル
べき乗・剰余・商と余り:**・%・divmod の実用サンプル

先生と生徒の会話形式で理解しよう

生徒

「Rubyで数値を計算するとき、べき乗や余りを簡単に出す方法ってありますか?」

先生

「もちろんです。Rubyでは**でべき乗、%で剰余、さらにdivmodで商と余りをまとめて求められます。」

生徒

「それぞれどう違うんですか?使い分けも知りたいです。」

先生

「では、順番に実例を見ながら理解していきましょう。」

1. べき乗(**)の基本

1. べき乗(**)の基本
1. べき乗(**)の基本

べき乗は数値を何回掛けるかを示す演算です。例えば2の3乗なら、2を3回掛けた結果を求めます。


puts 2 ** 3   # 2の3乗
puts 5 ** 2   # 5の2乗

8
25

べき乗は指数計算や繰り返し掛け算の処理で便利です。

2. 剰余(%)の使い方

2. 剰余(%)の使い方
2. 剰余(%)の使い方

剰余演算子%は割り算の余りを求めるために使います。プログラムでは偶数・奇数判定や周期処理に非常に役立ちます。


puts 10 % 3  # 余り1
puts 8 % 2   # 偶数判定

1
0

0が返れば割り切れたことを意味します。周期処理やカウント処理の制御によく使われます。

3. 商と余りをまとめて求めるdivmod

3. 商と余りをまとめて求めるdivmod
3. 商と余りをまとめて求めるdivmod

divmodは割り算の結果を商と余りのセットで返すメソッドです。数値計算をまとめて行うのに便利です。


quotient, remainder = 10.divmod(3)
puts "商: #{quotient}, 余り: #{remainder}"

商: 3, 余り: 1

これを使えば、割り算と余りの計算を別々に行わなくても済みます。

4. 実用的な活用例

4. 実用的な活用例
4. 実用的な活用例

例えば、1週間を7日で割る場合や、時計の時間計算で剰余やdivmodを使えます。


# 時計の計算例
hour = 15
hour24 = hour % 12
puts "12時間表記: #{hour24}"

# お金の分配例
total = 1000
people = 3
quotient, remainder = total.divmod(people)
puts "一人当たり: #{quotient}円, 余り: #{remainder}円"

12時間表記: 3
一人当たり: 333円, 余り: 1円

このように、**%divmodを組み合わせると、数値計算を効率的に行えます。

5. まとめ

5. まとめ
5. まとめ

Rubyでは数値の計算を簡単に行うために、べき乗(**)、剰余(%)、divmodを活用できます。べき乗は指数計算、剰余は余りの判定、divmodは商と余りを同時に求めるため、プログラム内での計算処理や分配、時間計算などに非常に便利です。初心者でも実用例を通じて理解すると、数値演算の応用が広がります。

関連記事:
カテゴリの一覧へ
新着記事
New1
データベース
SQLの処理が遅くなる原因とは?初心者向けにデータベースパフォーマンス最適化を完全解説
New2
Ruby
RubyのネストHash操作を徹底解説!digとtransformメソッドで複雑なデータも楽々
New3
Rails
Railsインデックス設計の極意!爆速サイトを作るためのスキーマ設計ガイド
New4
データベース
SQLのCOMMITとROLLBACKとは?トランザクション操作を初心者向けに完全解説
人気記事
No.1
Java&Spring記事人気No1
Ruby
PATHと環境変数の正しい設定!Windows・Mac・Linux別チェックリスト付き
No.2
Java&Spring記事人気No2
Rails
Railsで日本語と時刻の設定をしよう!初心者でも安心のlocale/zone初期設定チートシート
No.3
Java&Spring記事人気No3
Ruby
Rubyのハッシュを徹底比較!シンボルキーと文字列キーの違いと使い分け
No.4
Java&Spring記事人気No4
Rails
Railsマイグレーションの型選びを完全ガイド!初心者が迷わないカラム設計
No.5
Java&Spring記事人気No5
Ruby
WindowsでRubyをインストールする方法!RubyInstallerとMSYS2を使った完全ガイド
No.6
Java&Spring記事人気No6
Rails
RailsモデルとActive Record基礎|ID戦略を完全理解!AUTO INCREMENT・UUID・ULIDの比較と導入手順
No.7
Java&Spring記事人気No7
データベース
ACID特性とは?データベーストランザクションの信頼性を初心者向けに徹底解説
No.8
Java&Spring記事人気No8
Rails
RailsモデルとActive Record基礎|クエリログの読み方を理解してEXPLAIN・joins・includesの違いを学ぼう