หน้าหลัก
แนะนำรายวิชา
แบบทดสอบวัดผลสัมฤทธิ์ก่อนเรียน
บทที่ 1 ภาษาคอมพิวเตอร์
บทที่ 2 แนวคิดการโปรแกรม
บทที่ 3 ผังงาน
บทที่ 4 รหัสเทียม
บทที่ 5 โครงสร้างภาษาซี
บทที่ 6 ติดตั้งโปรแกรม Dev-c
บทที่ 7 ตัวแปรภาษาซี
บทที่ 8 ตัวดำเนินการภาษาซี
บทที่ 9 แสดงผล/รับข้อมูล
บทที่10 ควบคุมการแสดงผล
บทที่ 11 การเลือกทำตามเงื่อนไข
บทที่ 12 คำสั่งวนซ้ำ
แบบทดสอบผลสัมฤทธิ์หลังเรียน
แหล่งศึกษาเพิ่มเติม

 

Logical operators ( !, &&, || )

         ตัวดำเนินการตรรกะ (Logical Operators) หมายถึง ตัวดำเนินการทางตรรกศาสตร์ถูกใช้เพื่อเปรียบเทียบและตัดสินใจ

โดยนำเงื่อนไขตั้งแต่ 2 เงื่อนไข มาเปรียบเทียบกัน ผลที่ได้จากการดำเนินการ จะได้ผลเป็น 2 กรณี คือ (True) จะให้ค่าเป็น 1

และ เท็จ (False) จะให้ค่าเป็น 0 ตัวดำเนินการที่ใช้มีดังนี้

ตัวดำเนินการ ชื่อ
ความหมาย
&&
AND (และ) 
x && y
||
OR (หรือ) 
(x+y)
!
NOT (นิเสธ) 
 
!(x > y)

ตัวดำเนินการทางตรรกะแบบต่างๆ สามารถแสดงผลลัพธ์ของนิพจน์ตรรกะตามค่าความจริงของการดำเนินการได้

ดังตารางค่าความจริง (Truth Table) ดังนี้

ตารางค่าความจริงของตัวดำเนินการ && หรือ AND

ค่าความจริงนิพจน์ที่1

ค่าความจริง

ค่าความจริงนิพจน์ที่2

ผลลัพธ์

F

&&

F

F

F

T

F

T

F

F

T

T

T

ตารางค่าความจริงของตัวดำเนินการ || หรือ OR

ค่าความจริงนิพจน์ที่1

ค่าความจริง

ค่าความจริงนิพจน์ที่2

ผลลัพธ์

F

||

F

F

F

T

T

T

F

T

T

T

T

ตารางค่าความจริงของตัวดำเนินการ หรือ NOT

ค่าความจริงนิพจน์

ตัวอย่าง

ผลลัพธ์

F

!F

T

T

!T

F


 

Relational และ comparison operators ( ==, !=, >, <, >=, <= )

           ตัวดำเนินการเปรียบเทียบ หมายถึง เครื่องหมายที่ใช้ในการเปรียบเทียบ และตัดสินใจ ผลที่ได้จากการดำเนินการ

จะได้ 2 กรณี คือ จริง (True) จะให้ค่าเป็น 1 และ เท็จ (False) จะให้ค่าเป็น 0 เครื่องหมายที่ใช้มีดังนี้

ตัวดำเนินการ ความหมาย ตัวอย่าง
> มากกว่า A > B (A มากกว่า B)
>= มากกว่าหรือเท่ากับ A >= B (A มากกว่าหรือเท่ากับ B)
< น้อยกว่า A < B (A น้อยกว่า B)
<= น้อยกว่าหรือเท่ากับ

A <= B (A น้อยกว่าหรือเท่ากับ B)

== เท่ากับ A == B (A เท่ากับ B)
!= ไม่เท่ากับ A != B (A ไม่เท่ากับ B)

ตัวอย่าง

ตัวดำเนินการ ผลลัพธ์ หมายเหตุ
6 > 2
T
เนื่องจาก 6 มากกว่า 2 จริง
8 >= 3
T
เนื่องจาก 8 มีค่ามากกว่าหรือเท่ากับ 3 จริง
5 >= 19
F
เนื่องจาก 5 ไม่ได้มากกว่าหรือเท่ากับ 18
7 == 4
F
เนื่องจาก 7 ไม่ได้เท่ากับ 4

           

        

 

คำอธิบาย  
บรรทัดที่ 4

กำหนดให้ตัวแปร a = -90, b = 9, c = 0

บรรทัดที่ 7 ถ้า (!(a < b)  ====> (!(-90<9) ) ==>(!(True)) ===> False
บรรทัดที่ 9 แสดงผลข้อมูลบนจอภาพ using ! operator = True
บรรทัดที่ 6 นอกนั้น แสดงผลข้อมูลบนจอภาพ using ! operator = False *** หน้าจอแสดงผล False****
   
บรรทัดที่ 14 ถ้า ((0==1) && (-90 <= 9)) ==> ((F)&&(T)) ==> F
บรรทัดที่ 15 แสดงผลข้อมูลบนจอภาพ using ! operator = True
บรรทัดที่ 17 นอกนั้น แสดงผลข้อมูลบนจอภาพ using ! operator = False *** หน้าจอแสดงผล False****
   
บรรทัดที่ 21 ถ้า ((9>=0) || (-90<100)) ==>(T) || (T) ==> T
บรรทัดที่ 22 แสดงผลข้อมูลบนจอภาพ using ! operator = True ** หน้าจอแสดงผล True****
บรรทัดที่ 24 นอกนัน้น แสดงผลข้อมูลบนจอภาพ using ! operator = False
   

 

#include <stdio.h>
#include <stdbool.h>
int main() {
int a = -90,b=9,c=0;

// using "not" operator
if(!(a < b))

printf("\n using ! operator = True");
else
printf("\n using ! operator = False");

// using "and" operator
if((c==1) && (a <= b))
printf("\n using && operator =True.");
else
printf("\n using && operator =False.");

// using "or" operator
if((b >= c) || (a<100))
printf("\n using || operator = True.");
else
printf("\n using || operator = False.");

return 0;
}