
Operator ตัวดำเนินการ
ตัวดำเนินการ คือสัญลักษณ์ที่บอกให้คอมไพเลอร์ทำหน้าที่ทางคณิตศาสตร์หรือลอจิ โดยมีหลากหลายในตัวดำเนินการต่อไปนี้
1. ตัวดำเนินการเลขคณิต
สมมติว่าตัวแปร A = 20 และตัวแปร B = 10
|
ชื่อ |
สัญลักษณ์ |
คุณสมบัติ |
ตัวอย่าง |
|
เท่ากับ |
= |
จัดเก็บค่าทางด้านขวาของเครื่องหมาย ให้เท่ากับในตัวแปรทางด้านซ้ายของเครื่องหมายเท่ากับ |
A = B |
|
บวก |
+ |
รวมค่าทั้งสองข้างเข้าด้วยกัน |
A + B จะให้ 30 |
|
ลบ |
- |
ลบค่าทางซ้ายด้วยด้านขวา |
A - B จะให้ 10 |
|
คูณ |
* |
คูณค่าทั้งสองข้างเข้าด้วยกัน |
A * B จะให้ 200 |
|
หาร |
/ |
หารทางซ้ายด้วยค่าทางขวา |
B / A จะให้ 2 |
|
หารเอาเศษ |
% |
หารเอาเศษค่าทางซ้ายด้วยค่าทางขวา จากนั้นให้ค่าออกมาเป็นจำนวนเต็ม |
B % A จะให้ 0 |

/*
* Coding By : Arduino-MakerZone > www.arduino-makerzone.com
* Sample Coding : Arithmetic Operators
*/
int a = 20;
int b = 10;
int c;
void setup() {
Serial.begin(9600);
c = a + b;
Serial.print("a + b = ");
Serial.println(c);
c = a - b;
Serial.print("a - b = ");
Serial.println(c);
c = a * b;
Serial.print("a * b = ");
Serial.println(c);
c = a / b;
Serial.print("a / b = ");
Serial.println(c);
c = a % b;
Serial.print("a % b = ");
Serial.println(c);
}
void loop() {
}

2. ตัวดำเนินการเปรียบเทียบ
สมมติว่าตัวแปร A = 10 และตัวแปร B = 20
|
ชื่อ |
สัญลักษณ์ |
คุณสมบัติ |
ตัวอย่าง |
|
เท่ากับ |
== |
ตรวจสอบว่าค่าของตัวถูกดำเนินการสองตัวมีค่าเท่ากันหรือไม่ ถ้าใช่แล้วเงื่อนไขจะกลายเป็นจริง |
(A == B) เป็นเท็จ |
|
ไม่เท่ากับ |
!= |
ตรวจสอบว่าค่าของตัวถูกดำเนินการสองตัวมีค่าเท่ากันหรือไม่ ถ้าค่าไม่เท่ากับเงื่อนไขจะเป็นจริง |
(A != B) เป็นความจริง |
|
น้อยกว่า |
< |
ตรวจสอบว่าค่าทางด้านซ้ายน้อยกว่าค่าทางขวาหรือไม่ ถ้าใช่แล้วเงื่อนไขจะกลายเป็นจริง |
(A < B) เป็นความจริง |
|
มากกว่า |
> |
ตรวจสอบว่าค่าทางด้านซ้ายมากกว่าค่าทางขวาหรือไม่ ถ้าใช่แล้วเงื่อนไขจะกลายเป็นจริง |
(A > B) เป็นเท็จ |
|
น้อยกว่าหรือเท่ากับ |
<= |
ตรวจสอบว่าค่าทางด้านซ้ายน้อยกว่าหรือเท่ากับค่าทางขวาหรือไม่ ถ้าใช่แล้วเงื่อนไขจะกลายเป็นจริง |
(A <= B) เป็นความจริง |
|
มากกว่าหรือเท่ากับ |
>=
|
ตรวจสอบว่าค่าทางด้านซ้ายมากกว่าหรือเท่ากับค่าทางขวาหรือไม่ ถ้าใช่แล้วเงื่อนไขจะกลายเป็นจริง |
(A >= B) เป็นเท็จ |

/*
* Coding By : Arduino-MakerZone > www.arduino-makerzone.com
* Sample Coding : Comparison Operators
*/
int a = 20;
int b = 10;
bool c = false;
void setup() {
Serial.begin(9600);
if(a == b)
c = true;
else
c = false;
Serial.print("a == b : "); Serial.println(c);
if(a != b)
c = true;
else
c = false;
Serial.print("a != b : "); Serial.println(c);
if(a < b)
c = true;
else
c = false;
Serial.print("a < b : "); Serial.println(c);
if(a > b)
c = true;
else
c = false;
Serial.print("a > b : "); Serial.println(c);
if(a <= b)
c = true;
else
c = false;
Serial.print("a <= b : "); Serial.println(c);
if(a >= b)
c = true;
else
c = false;
Serial.print("a >= b : "); Serial.println(c);
}
void loop() {
}

3. ตัวดำเนินการ Boolean
สมมติว่าตัวแปร A =10 และตัวแปร B = 20
|
ชื่อ |
สัญลักษณ์ |
คุณสมบัติ |
ตัวอย่าง |
|
และ |
&& |
เรียกว่า Logical AND operator ถ้าทั้งสองตัวถูกดำเนินการไม่เป็นศูนย์จากนั้นเงื่อนไขจะกลายเป็นจริง |
(A && B) เป็นความจริง |
|
หรือ |
|| |
เรียกว่าตรรกะหรือโอเปอเรเตอร์ ถ้าตัวดำเนินการสองตัวใดที่ไม่ใช่ศูนย์จากนั้นเงื่อนไขจะกลายเป็นจริง |
(A || B) เป็นความจริง |
|
ไม่ |
! |
เรียกว่า Logical NOT Operator ใช้เพื่อยกเลิกสถานะตรรกะของโอเปอแรนด์ หากเงื่อนไขเป็นจริง Logical NOT operator จะทำผิด |
! (A & & B) เป็นเท็จ
|

/*
* Coding By : Arduino-MakerZone > www.arduino-makerzone.com
* Sample Coding : Boolean Operators
*/
int a = 10;
int b = 20;
bool c = false;
void setup() {
Serial.begin(9600);
if((a > b) && (b < a))
c = true;
else
c = false;
Serial.print("(a > b) && (b < a) : "); Serial.println(c);
if((a == b) || (b < a))
c = true;
else
c = false;
Serial.print("(a == b) || (b < a) : "); Serial.println(c);
if(!(a == b) && (b < a))
c = true;
else
c = false;
Serial.print("!(a == b) && (b < a) : "); Serial.println(c);
}
void loop() {
}

4. ตัวดำเนินการ Compound
สมมติว่าตัวแปร A =10 และตัวแปร B = 20
|
ชื่อ |
สัญลักษณ์ |
คุณสมบัติ |
ตัวอย่าง |
|
เพิ่มขึ้น |
++ |
ดำเนินการเพิ่มจำนวนค่าขึ้น 1 |
A ++ จะให้ 11 |
|
ลดลง |
-- |
ดำเนินการลดจำนวนค่าลง 1 |
A -- จะให้ 9 |
|
บวกเท่ากับ |
+= |
ทำการรวมค่าของตัวผลลัพธ์เข้ากับตัวแปรทางด้านขวาจากนั้นเก็บไว้ในตัวแปรผลลัพธ์ |
B += A เทากับ B = B + A
|
|
ลบเท่ากับ |
-= |
ทำการลบค่าของตัวผลลัพธ์ด้วยกับตัวแปรทางด้านขวาจากนั้นเก็บไว้ในตัวแปรผลลัพธ์ |
B - = A เทากับ B = B - A |
|
คูณเท่ากับ |
*= |
ทำการคูณค่าของตัวผลลัพธ์เข้ากับตัวแปรทางด้านขวาจากนั้นเก็บไว้ในตัวแปรผลลัพธ์ |
B * = A เทียบเท่ากับ B = B * A |
|
หารเท่ากับ |
/= |
ทำการหารค่าของตัวผลลัพธ์ด้วยกับตัวแปรทางด้านขวาจากนั้นเก็บไว้ในตัวแปรผลลัพธ์ |
B / = A เทียบเท่ากับ B = B / A |
|
หารเอาเศษเท่ากับ |
%= |
ทำการหารเอาเศษค่าของตัวผลลัพธ์ด้วยกับตัวแปรทางด้านขวาจากนั้นเก็บไว้ในตัวแปรผลลัพธ์เป็นจำนวนเต็ม |
B% = A เท่ากับ B = B% A |

/*
* Coding By : Arduino-MakerZone > www.arduino-makerzone.com
* Sample Coding : Compound Operators
*/
int a = 10;
int b = 20;
void setup() {
Serial.begin(9600);
a++;
Serial.print("a++ : "); Serial.println(a);
a--;
Serial.print("a-- : "); Serial.println(a);
b += a;
Serial.print("b += a : "); Serial.println(b);
b -= a;
Serial.print("b -= a : "); Serial.println(b);
b *= a;
Serial.print("b *= a : "); Serial.println(b);
b /= a;
Serial.print("b /= a : "); Serial.println(b);
a %= b;
Serial.print("a %= b : "); Serial.println(a);
}
void loop () {
}

Arduino.MakerZone