ตัวดำเนินการเชิงตรรกะ ในภาษา C++ ได้แก่ &&, || และ ! ซึ่งแสดงถึงตรรกะ AND, ตรรกะ OR และการปฏิเสธเชิงตรรกะตามลำดับ โดยมีคำอธิบายอยู่ด้านล่าง
1. ตรรกะ และ &&:
ตรรกะ AND เป็นตัวดำเนินการไบนารี เมื่อใช้ จะมีนิพจน์ทั้งสองด้านของ && ถ้านิพจน์ทางด้านซ้ายและด้านขวาของตัวดำเนินการเป็นจริง นิพจน์ทั้งหมดจะเป็นจริง มิฉะนั้นจะเป็นเท็จ เช่น นิพจน์: 5&&6, 1&&-1 และ 1<2&&5 เป็นจริงทั้งคู่ และนิพจน์ 3-3&&5 และ 10--&&0 ทั้งสองรายการเป็นเท็จ
2. ตรรกะหรือ ||:
ตัวดำเนินการแบบลอจิคัล OR ก็เป็นตัวดำเนินการไบนารีเช่นกัน เมื่อใช้ จะต้องมีนิพจน์ทั้งสองด้าน ถ้ามีนิพจน์ทางด้านซ้ายและด้านขวาของตัวดำเนินการเพียงรายการเดียวเท่านั้น แสดงว่านิพจน์ OR แบบลอจิคัลทั้งหมดเป็นจริง มิฉะนั้น ทั้งสองนิพจน์ เป็นเท็จ เช่น นิพจน์: 3-3||5 เป็นจริง 0||5-5 เป็นเท็จ
3. ตรรกะไม่!:
การปฏิเสธแบบลอจิคัลคือตัวดำเนินการเอกภาค ซึ่งหมายถึงการปฏิเสธ โดยวางไว้ทางด้านซ้ายของนิพจน์ เช่น !a กล่าวคือ นิพจน์ที่เดิมเป็นจริงจะกลายเป็นเท็จหลังจากการปฏิเสธ และนิพจน์ที่เดิมเป็นเท็จจะกลายเป็นเท็จ หลังจากการปฏิเสธกลายเป็นจริง ตัวอย่างเช่น นิพจน์ !0 ให้ผลลัพธ์เป็น 1 และ !(2>1) ให้ผลลัพธ์เป็น 0
ข้างต้น ฉันหวังว่าคุณจะเสริมสร้างความเข้าใจของคุณ ในงานการเรียนรู้จริง มักจะเป็นนิพจน์ผสมที่รวมตัวดำเนินการและตัวแปร เช่น ตัวดำเนินการเชิงสัมพันธ์ ตัวดำเนินการทางคณิตศาสตร์ ตัวดำเนินการเชิงตรรกะ ฯลฯ ดังนั้นคุณต้องมีความเชี่ยวชาญในกฎ
ดังที่แสดงในโค้ดต่อไปนี้ คุณคิดว่าค่าของสองนิพจน์นี้มีค่าเท่ากับเท่าใด
#include<iostream>usingnamespacestd;intmain(){inta=10;intb=20;intc=30;intd,e;d=!c>(ba)&&(cb)>(ba);e=(ba)| |(cb)&&!(cba);return0;}