Menu
Coddy logo textTech

剰余演算子

CoddyのRustジャーニー「Fundamentals」セクションの一部 — レッスン 16/75。

剰余演算子 % は、除算の余りを返します。Rustでは、シンプルな構文で使用されます:

let result = dividend % divisor;
  • dividend: 割られる数。
  • divisor: 割る数。
  • result: 除算の余り。

例えば:

let result = 10 % 3;

ここでは、10を3で割っています。3は10の中に3回入り、余りは1になります。したがって、resultは1になります。

通常、剰余演算(modulo)は数値が偶数か奇数かを確認するために使用されます:

  • 数値が偶数の場合、2で割ると余りは0になります。
  • 数値が奇数の場合、2で割ると余りは1になります。

浮動小数点数(f64)で剰余演算(modulo)を使用する場合、整数と同様に動作しますが、小数の精度が保持されます。例えば:

let result: f64 = 5.2 % 2.0;
// 結果は 1.2 です

仕組みは次の通りです。2.0は5.2の中に2回入り(4.0)、余りは1.2(5.2 - 4.0 = 1.2)となります。

別の例:

let result: f64 = 7.8 % 3.5;
// result は 0.8 です
challenge icon

チャレンジ

初心者

3つの変数、a (i32)b (f64)、および c (i32) を、それぞれ 92.6、および 11 という値で初期化するコードを記述してください。

その後、以下の変数を初期化してください:

  • a 剰余 2 の結果を保持する d (i32) 
  • a 剰余 3 の結果を保持する e (i32)
  • b 剰余 1.5 の結果を保持する f (f64)
  • b 剰余 3.9 の結果を保持する g (f64)
  • c 剰余 10 の結果を保持する h (i32)

結果を確認し、異なる被除数と除数が結果にどのように影響するかを見てみましょう。

チートシート

剰余演算子 % は、除算の余りを返します:

let result = dividend % divisor;

整数での例:

let result = 10 % 3; // 結果は 1 です

一般的なユースケース - 数値が偶数か奇数かを判定する:

  • 偶数: number % 2 == 0
  • 奇数: number % 2 == 1

浮動小数点数での剰余:

let result: f64 = 5.2 % 2.0; // 結果は 1.2 です
let result: f64 = 7.8 % 3.5; // 結果は 0.8 です

自分で試してみよう

fn main() {
    // 以下にコードを入力してください
    
    
    // 以下の行は変更しないでください
    println!("a = {}", a);
    println!("b = {}", b);
    println!("c = {}", c);
    println!("d = {}", d);
    println!("e = {}", e);
    println!("f = {}", f);
    println!("g = {}", g);
    println!("h = {}", h);
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

Fundamentalsのすべてのレッスン