ตัวดำเนินการ C# XOR

Taw Danein Kar C Xor



ตัวดำเนินการ XOR (เฉพาะ OR) คือตัวดำเนินการไบนารีที่ทำงานร่วมกับตัวถูกดำเนินการสองตัว และให้ผลลัพธ์เป็นจริงก็ต่อเมื่อตัวใดตัวหนึ่งประเมินเป็นจริงเท่านั้น นอกจากนี้ยังส่งคืนเท็จ ความสามารถของคุณในฐานะโปรแกรมเมอร์ C# อาจเพิ่มขึ้นอย่างมากโดยการทำความเข้าใจและใช้งานตัวดำเนินการ XOR ไม่ว่าจะเป็นการตัดสินใจเชิงตรรกะหรือการจัดการข้อมูล ในบทความนี้ เราจะพิจารณาการใช้งานในภาษา C# ด้วยความช่วยเหลือจากตัวอย่างโค้ดบางส่วน

ตัวอย่างที่ 1:

มาดูโปรแกรม C# ที่สาธิตการใช้ตัวดำเนินการ XOR (^) เพื่อกำหนดความสมบูรณ์ของอาหารโดยพิจารณาว่าเป็นมังสวิรัติหรือมีเนื้อสัตว์เป็นส่วนประกอบ บรรทัดแรก “ใช้ระบบ” เป็นการประกาศเนมสเปซที่อนุญาตให้โปรแกรมเข้าถึงคลาสและฟังก์ชันที่กำหนดไว้ในเนมสเปซ “ระบบ” ซึ่งมีประเภทพื้นฐานและฟังก์ชันหลักของ C# รหัสกำหนดคลาสสาธารณะชื่อ 'Dummy'

คีย์เวิร์ดสาธารณะระบุว่าคลาสสามารถเข้าได้จากส่วนอื่นๆ ของโปรแกรม ภายในคลาส 'Dummy' มีวิธีการคงที่ชื่อ 'Main' เมธอด “Main” รับอาร์เรย์ของสตริง (string[] args) เป็นพารามิเตอร์ที่อนุญาตให้ส่งผ่านอาร์กิวเมนต์บรรทัดคำสั่งไปยังโปรแกรม







ภายในเมธอด 'Main' มีการประกาศและกำหนดค่าตัวแปรบูลีน 3 ตัว ได้แก่ 'isVeg' ตั้งค่าเป็นจริงซึ่งระบุว่าอาหารนั้นเป็นมังสวิรัติหรือไม่ 'isMeat' ตั้งค่าเป็นเท็จซึ่งระบุว่าอาหารมีเนื้อสัตว์หรือไม่ 'IsFit' ได้รับการประกาศ และได้รับมอบหมายพร้อมกับผลลัพธ์ของการดำเนินการ XOR (isVeg ^ isMeat) ซึ่งกำหนดความสมบูรณ์ของอาหารโดยพิจารณาจากสถานะมังสวิรัติและปริมาณเนื้อสัตว์



บรรทัด Console.WriteLine ส่งออกผลลัพธ์ของการตรวจสอบความสมบูรณ์โดยใช้การแก้ไขสตริง ค่าของ “isFit” จะแสดงภายในสตริงซึ่งระบุว่าอาหารนั้นถือว่าดีต่อสุขภาพหรือไม่



โดยใช้ระบบ ;

ดัมมี่คลาสสาธารณะ {

สาธารณะ คงที่ เป็นโมฆะ หลัก ( เชือก [ ] หาเรื่อง )

{

บูล isVeg = จริง ;

บูล isMeat = เท็จ ;

บูล isFit = เป็นผัก ^ คือเนื้อ ;

คอนโซล เขียนไลน์ ( $ 'อาหารดีต่อสุขภาพหรือไม่ : {isFit}' ) ;

}

}

โดยสรุป โค้ดนี้แสดงแนวคิดของตรรกะบูลีนใน C# และวิธีที่ตัวดำเนินการ XOR สามารถใช้เพื่อกำหนด XOR แบบลอจิคัลของตัวแปรบูลีนสองตัว และประเมินความสมบูรณ์ของอาหารโดยพิจารณาจากว่าเป็นมังสวิรัติหรือครอบคลุมเนื้อสัตว์







ตัวอย่างที่ 2:

มาสาธิตการใช้งานตัวดำเนินการ XOR ใน C# ผ่านตัวอย่างโค้ดอื่น เราจะดำเนินการ XOR ระดับบิตกับตัวแปรจำนวนเต็มสองตัว (n1 และ n2) รหัสเริ่มต้นด้วย 'การใช้ระบบ' คำสั่งที่นำเข้าเนมสเปซ “ระบบ” เพื่ออนุญาตให้ใช้คลาสที่กำหนดไว้ในเนมสเปซ “ระบบ” เช่นคลาส “คอนโซล”

รหัสกำหนดคลาสชื่อ 'ตรวจสอบ' โดยใช้ไวยากรณ์ 'ตรวจสอบคลาสสาธารณะ' คลาสนี้มีเมธอดเดียวคือ “ใหม่” ฟังก์ชัน main() รับอาร์เรย์สตริง 'args' เป็นพารามิเตอร์ที่สามารถใช้เพื่อส่งค่าบรรทัดคำสั่งไปยังโปรแกรมโค้ด

ภายในเมธอด Main() ตัวแปรจำนวนเต็มสองตัว “n1” และ “n2” จะถูกประกาศและเริ่มต้นด้วยค่า 17 และ 8 ตามลำดับ ค่า “n1” มีเลขฐานสองเท่ากับ 10001 ซึ่งหมายความว่ามีค่าเท่ากับทศนิยม 17 และค่า “n2” มีเลขฐานสองเท่ากับ 1000 ซึ่งหมายความว่ามีค่าเท่ากับทศนิยม 8

“int ความละเอียด = n1 ^ n2;” บรรทัดคำนวณผลลัพธ์ของการดำเนินการ XOR ระหว่าง 'n1' และ 'n2' โดยใช้ตัวดำเนินการ XOR (^) ผลลัพธ์จะถูกเก็บไว้ใน 'Res' ที่ไม่แน่นอน การดำเนินการ XOR ถูกนำไปใช้กับการแทนค่าไบนารีของ 'n1' และ 'n2' โดยจะเปรียบเทียบแต่ละบิตที่สอดคล้องกันของการแทนค่าไบนารี่ และตั้งค่าบิตผลลัพธ์เป็น 1 หากบิตต่างกัน และ 0 หากบิตเหมือนกัน

ในการดำเนินการ XOR เราจะได้ผลลัพธ์ไบนารี่ของ 11001 ซึ่งเท่ากับทศนิยม 25 Console.WriteLine($”Result: {Res}”); บรรทัดพิมพ์ผลลัพธ์ของการดำเนินการ XOR ไปยังคอนโซล วิธีการ Console.WriteLine ใช้เพื่อแสดงสตริง 'Result:' ตามด้วยค่าของตัวแปร 'Res' ไวยากรณ์ {$”Result: {Res}”} เรียกว่าการแก้ไขสตริงซึ่งช่วยให้เราสามารถฝังค่าของตัวแปร “Res” ลงในสตริงได้โดยตรง

โดยใช้ระบบ ;

ตรวจสอบชั้นเรียนสาธารณะ {

สาธารณะ คงที่ เป็นโมฆะ หลัก ( เชือก [ ] หาเรื่อง )

{

ภายใน n1 = 17 ; // 10001

ภายใน n2 = 8 ; // 1,000

ภายใน ความละเอียด = n1 ^ n2 ;

คอนโซล เขียนไลน์ ( $ 'ผลลัพธ์: {Res}' ) ;

}

}

หน้าจอคอนโซลเอาท์พุตที่แสดงในรูปภาพต่อไปนี้จะแสดงผลลัพธ์ '25' ที่ได้มาจากการใช้การดำเนินการ XOR ระหว่าง 17 ถึง 8:

ตัวอย่างที่ 3:

เรามาดูตัวอย่างสุดท้ายของบทความนี้ซึ่งกำหนดการใช้งานตัวดำเนินการ XOR ใน C# ข้อมูลโค้ดที่แนบมาต่อไปนี้เริ่มต้นด้วยคำว่า “using System” คำสั่งที่กำลังนำเข้าเนมสเปซ 'ระบบ'

จากนั้นจะมีการประกาศคลาสสาธารณะชื่อ 'Test' คลาสนี้ถูกยกเลิกเป็นจุดเริ่มต้นที่นี่และยังครอบคลุมถึงเมธอด main() ด้วย ภายในเมธอด 'Main()' เราทำการดำเนินการ XOR กับค่าอักขระ ตัวแปร “char” สองตัว ได้แก่ “L1” และ “L2” ได้รับการประกาศและกำหนดด้วยค่า “M” และ “R” ตามลำดับ

ตัวแปรเหล่านี้แสดงถึงอักขระ ตัวแปร “char” อีกตัวหนึ่งชื่อ “Res” ได้รับการประกาศและกำหนดพร้อมกับผลลัพธ์ของการดำเนินการ XOR ระหว่าง “L1” และ “L2” การดำเนินการ XOR ดำเนินการผ่านตัวดำเนินการ XOR “^”

เนื่องจากตัวดำเนินการ XOR ทำงานกับค่าจำนวนเต็ม การร่าย (อักขระ) จึงถูกใช้เพื่อแปลงค่าจำนวนเต็มผลลัพธ์กลับเป็นอักขระ คำสั่ง Console.WriteLine ถูกยกเลิกเพื่อพิมพ์ผลลัพธ์ ใช้การแก้ไขสตริง (`$`) เพื่อรวมค่า 'Res' ในเอาต์พุต

เมื่อโปรแกรมถูกดำเนินการ เมธอด main() จะถูกเรียกและเอาต์พุตต่อไปนี้จะแสดงในคอนโซล ในกรณีนี้ การดำเนินการ XOR ระหว่างอักขระ “M” และ “R” จะส่งผลให้เกิด “?” หรือ '.' อักขระ. อักขระผลลัพธ์จะถูกพิมพ์เป็นส่วนหนึ่งของเอาต์พุต

โดยใช้ระบบ ;

การทดสอบในชั้นเรียนสาธารณะ {

สาธารณะ คงที่ เป็นโมฆะ หลัก ( เชือก [ ] หาเรื่อง )

{

ถ่าน L1 = 'เอ็ม' ;

ถ่าน L2 = 'อาร์' ;

ถ่าน ความละเอียด = ( ถ่าน ) ( L1 ^ L2 ) ;

คอนโซล เขียนไลน์ ( $ 'ผลลัพธ์: {Res}' ) ;

}

}

นั่นเป็นคำอธิบายโดยละเอียดของโค้ดที่ให้ไว้ก่อนหน้านี้ โดยแสดงให้เห็นว่าตัวดำเนินการ XOR ใช้ในการดำเนินการ Bitwise XOR กับค่าอักขระ และพิมพ์ผลลัพธ์ตามที่แสดงในภาพที่แนบมาต่อไปนี้:

บทสรุป

ตัวดำเนินการ C# XOR มอบเครื่องมือที่ยืดหยุ่นเพื่อดำเนินการ Bitwise และการดำเนินการเชิงตรรกะ ช่วยให้คุณสามารถทำงานกับบิตไบนารี่และแสดงเงื่อนไขเฉพาะในลอจิกบูลีน จากตัวอย่างโค้ด เราได้พูดคุยถึงวิธีการใช้ตัวดำเนินการ XOR กับค่าบูลีน ค่าจำนวนเต็ม และค่าอักขระเพื่อให้ได้ผลลัพธ์ที่ต้องการ การใช้ตัวดำเนินการ XOR อย่างถูกต้อง คุณสามารถเพิ่มทักษะของคุณในฐานะโปรแกรมเมอร์ C# ได้