อันดับแรก ให้เราเรียนรู้เกี่ยวกับตัวดำเนินการเชิงตรรกะ
ตัวดำเนินการตรรกะ
-
สิ่งเหล่านี้ใช้เพื่อรวม 2 (หรือ) นิพจน์เพิ่มเติมอย่างมีเหตุผล
-
เป็นตรรกะและ (&&) ตรรกะ OR ( || ) และตรรกะไม่ (!)
ตรรกะและ (&&)
exp1 | exp2 | exp1&&exp2 |
---|---|---|
ท | ท | ท |
ท | F | F |
F | ท | F |
F | F | F |
ตรรกะ OR(||)
exp1 | exp2 | exp1||exp2 |
---|---|---|
ท | ท | ท |
ท | F | ท |
F | ท | ท |
F | F | F |
ไม่ใช่ตรรกะ (!)
exp | !exp |
---|---|
ท | ท |
F | ท |
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง | a=10,b=20,c=30 | ผลลัพธ์ |
---|---|---|---|---|
&& | ตรรกะและ | (a>b)&&(a(10>20)&&(10<30) | 0 | |
|| | ตรรกะหรือ | (a>b)||(a<=c) | (10>20)||(10<30) | 1 |
! | ไม่ใช่ตรรกะ | !(a>b) | !(10>20) | 1 |
ตัวอย่าง
ต่อไปนี้เป็นโปรแกรม C เพื่อคำนวณตัวดำเนินการเชิงตรรกะ -
#include<stdio.h> main (){ float a=0.5,b=0.3,c=0.7; printf("%d\n",(a<b)&&(b>c));//0// printf("%d\n",(a>=b)&&(b<=c));//1// printf("%d\n",(a==b)||(b==c));//0// printf("%d\n",(b>=a)||(a==c));//0// printf("%d\n",(b<=c)&&!(c>=a));//0// printf("%d\n",!(b<=c)||(c>=a));//1// }
ผลลัพธ์
คุณจะเห็นผลลัพธ์ต่อไปนี้ -
0 1 0 0 0 1
ผู้ดำเนินการมอบหมาย
ใช้เพื่อกำหนดค่าให้กับตัวแปร
ประเภท
ประเภทของตัวดำเนินการมอบหมายคือ −
- การมอบหมายอย่างง่าย
- การกำหนดแบบผสม
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
= | การมอบหมายงานง่ายๆ | a=10 |
+=,-=,*=,/=,%= | การกำหนดแบบผสม | a+=10"a=a+10 a=10"a=a-10 |
โปรแกรม
รับด้านล่างเป็นโปรแกรม C สำหรับตัวดำเนินการกำหนดแบบผสม -
#include<stdio.h> int main(void){ int i; char a='h'; printf("enter the value of i:\n"); scanf("%d",&i); printf("print ASCII value of %c is %d\n", a, a); a += 5; printf("print ASCII value of %c is %d\n", a, a); a *= a + i; printf("a = %d\n", a); a *= 3; printf("a = %d\n", a); a /= 2; printf("a = %d\n", a); a %= 4; printf("a = %d\n", a); return 0; }
ผลลัพธ์
คุณจะเห็นผลลัพธ์ต่อไปนี้ -
enter the value of i: 3 print ASCII value of h is 104 print ASCII value of m is 109 a = -80 a = 16 a = 8 a = 0