যদিও ইতিমধ্যে ভাল উত্তর রয়েছে, আমি ভেবেছিলাম যে সত্যিকারের টেবিলটি মূল্যায়ন করার জন্য বুলিয়ান বীজগণিতের ক্ষেত্রে নতুন যে কারও কাছে এই পদ্ধতির আরও স্বজ্ঞাত হতে পারে।
প্রথম কাজটি আপনি করতে চান তা হ'ল আপনি কোন অবস্থার অধীনে সি কার্যকর করতে চান এটি যখন তখন হয় (a & b)
। এছাড়াও যখন !a
। সুতরাং তোমার আছে(a & b) | !a
।
আপনি যদি ছোট করতে চান তবে যেতে পারেন। "নরমাল" গাণিতিকের মতো, আপনিও গুণ করতে পারেন can
(a & b) | !a = (a | !a) & (b | !a)
। ক | ! একটি সর্বদা সত্য, সুতরাং আপনি কেবল এটি পেরিয়ে যেতে পারেন, যা আপনাকে সর্বনিম্ন ফলাফল সহ ছেড়ে দেয়:b | !a
। যদি আদেশটি কোনও তফাৎ করে, কারণ আপনি কেবলমাত্র খ কে পরীক্ষা করতে চান! যদি সত্য হয় (উদাহরণস্বরূপ! যখন একটি নালপয়েন্টার চেক হয় এবং বি @LordFarquaad তার মন্তব্যে নির্দেশিত মত পয়েন্টারে একটি অপারেশন), আপনি সম্ভবত দুটোকে স্যুইচ করতে চাই
অন্য ক্ষেত্রে (/ * ... * /) সি কার্যকর করা হয় না তা সর্বদা কার্যকর করা হবে, সুতরাং আমরা কেবল এটি অন্য ক্ষেত্রে রাখতে পারি।
এছাড়াও উল্লেখযোগ্য যে এটি সম্ভবত কোনও পদ্ধতিতে ক্রিয়া সি রাখার যে কোনও উপায় বোধ করে।
যা নিম্নলিখিত কোড সহ আমাদের ছেড়ে যায়:
if (!A || B)
{
doActionC() // execute method which does action C
}
else
{
/* ... */ // what ever happens here, you might want to put it into a method, too.
}
আপনি আরও অপারেন্ডগুলির সাথে শর্তগুলিও হ্রাস করতে পারেন যা সত্যের টেবিলগুলির সাথে দ্রুত কুৎসিত হয়। আর একটি ভাল পন্থা কর্নোগ মানচিত্র। তবে আমি এখন এর গভীরে যাব না।