Arduino if ステートメント

Ammar Ali 2023年10月12日
  1. Arduino の比較演算子で if ステートメントを使用する
  2. Arduino の boolean 演算子で if ステートメントを使用する
Arduino if ステートメント

このチュートリアルでは、if ステートメントを使用して Arduino のさまざまな条件をチェックする方法について説明します。

Arduino の比較演算子で if ステートメントを使用する

if ステートメントはさまざまな条件をチェックするために使用されます。条件が true の場合、if ステートメントの括弧内のコードが実行されます。そうでなければ、そうではありません。if ステートメントの入力パラメーターはブール値であり、true または false のどちらでもかまいません。if ステートメントの基本的な構文を以下に示します。

void loop() {
  if (condition) {
    your code;
  }
}

上記のコードでは、条件はブール値です。条件が真の場合、if ステートメント内のコードが実行されます。そうでなければ、そうではありません。では、比較演算子を使用して、if ステートメントで条件を渡すにはどうすればよいでしょうか。比較演算子には、等しい、等しくない、より小さい、以下、より大きい、より大きい、または等しい 6つの演算子が含まれます。比較演算子を使用して、if ステートメント内の 2つ以上の変数を比較できます。2つの変数を比較したいとします。2つの変数が等しい場合は、コードを実行します。そうでなければ、そうではありません。

int a = 10;
int b = 10;

void setup() {
  Serial.begin(9600);
}
void loop() {
  if (a == b) {
    Serial.print("a is equal to b");
  }
  if (a < b) {
    Serial.print("a is less than b");
  }
}

上記のコードでは、ab の 2つの変数を比較しています。2つの変数の値が等しいことがわかります。したがって、条件が真であるため、最初の if ステートメントのみが実行されます。条件が false であるため、2 番目のステートメントは実行されません。シリアルモニターに出力された最初のステートメントのみが表示されます。これは a が b と等しいことです。ここで、if ステートメントを使用して 3つ以上の変数を比較する場合は、boolean 演算子を使用する必要があります。

Arduino の boolean 演算子で if ステートメントを使用する

ブール演算子は、論理 AND論理 NOT、および論理 OR です。これらの演算子を使用して、if ステートメントに複数の条件を入れることができます。すべての条件が真である場合にのみステートメントを実行する場合は、論理および演算子を使用する必要があります。条件の 1つが真であってもステートメントを実行したい場合は、論理演算子または演算子を使用する必要があります。ここで、if ステートメント内に複数の条件を入れたい例を考えてみましょう。

int a = 10;
int b = 10;
int c = 20;

void setup() {
  Serial.begin(9600);
}
void loop() {
  if (a == b && a < c) {
    Serial.print("Something");
  }
  if (a < b || a < c) {
    Serial.print("SomethingElse");
  }
}

上記のコードでは、両方の条件が真であるため、最初の if ステートメントが実行され、シリアルモニターに Something が出力されます。2 番目の if ステートメントでは、1つの条件が真でもう 1つが偽ですが、論理演算子または演算子を使用する必要があるため、2つの条件のいずれかが真であっても、ステートメントが実行されます。シリアルモニターに SomethingElse が出力されます。

著者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook