|
答 = 値1 % 値2; 【パラメータ】 値1 変数または定数 値2 変数または定数 【例】 x = 7 % 5; // xは2に x = 9 % 5; // xは4に x = 5 % 5; // xは0に x = 4 % 5; // xは4に 剰余演算子は間欠的なイベントを実行したいときや、配列の要素を順繰りに使いたいときなどに有効です。 次の例では、ループが10回まわるごとに1回、センサをチェックするという処理を剰余で表現しています。 void loop() {
i++;
if ((i % 10) == 0){
x = analogRead(sensPin);
}
}
この例では、剰余を使って、配列を循環的に利用しています。 int senVal[5]; // センサのデータを格納する配列
int i, j; // カウンタ
long average; // 平均値
void loop(){
// 読み取ったデータを、配列上の一番古いデータに上書き
sensVal[(i++) % 5] = analogRead(sensPin);
average = 0;
for (j=0; j<5; j++){
average += sensVal[j]; // 合計していく
}
average = average / 5; // データの数で割って平均を求める
【TIPS】 剰余演算子は浮動小数点(float)の値に対しては機能しません。 [目次へ戻る] |
Creative Commons Attribution-ShareAlike 3.0 License.
このドキュメントはArduino Teamにより執筆され、Takumi Funadaが翻訳し、一部加筆修正したものです
ご意見はtf at musashinodenpa.comまでお送りください [Arduino wiki]