อันดับแรก ให้เราเรียนรู้เกี่ยวกับตัวดำเนินการเชิงตรรกะ
ตัวดำเนินการตรรกะ
-
สิ่งเหล่านี้ใช้เพื่อรวม 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