%

[Arithmetic Operators]

説明

Remainder operation calculates the remainder when one integer is divided by another. It is useful for keeping a variable within a particular range (e.g. the size of an array). The % (percent) symbol is used to carry out remainder operation.

Syntax

remainder = dividend %% divisor;

Parameters

remainder: variable. Allowed data types: intfloatdouble.
dividend: variable or constant. Allowed data types: int.
divisornon zero variable or constant. Allowed data types: int.

Example Code

int x = 0;
x = 7 %% 5;  // x now contains 2
x = 9 %% 5;  // x now contains 4
x = 5 %% 5;  // x now contains 0
x = 4 %% 5;  // x now contains 4
x = -4 %% 5; // x now contains -4
x = 4 %% -5; // x now contains 4
/* update one value in an array each time through a loop */

int values[10];
int i = 0;

void setup() {}

void loop() {
  values[i] = analogRead(0);
  i = (i + 1) %% 10; // remainder operator rolls over variable
}

Tips

  1. The remainder operator does not work on floats.
  2. If the first operand is negative, the result is negative (or zero). Therefore, the result of x % 10 will not always be between 0 and 9 if x can be negative.

Language Reference Home

86Duino のリファレンスのテキストは Arduino レファレンス を編集したもので、 Creative Commons Attribution-ShareAlike 3.0 License下でライセンスされています。リファレンス内のコードサンプルはパブリックドメインとして公開されています。

コメントする

上部へスクロール