これらの複合論理式を単純化するにはどうすればよいですか?
!((x <= 5) && (y == 10) && (z < 5)) // 1
!(x == 10) || !((y == 5) || (z < 0)) // 2
簡略化のルールを読みましたが、どうすればよいかわかりません==
。
E Balagurasy 著「Programing in ANSI C」より引用 意思決定ステートメントを設計しているときに、!(x&&y || !z) のように複合論理式に論理 NOT 演算子が適用される状況に遭遇することがよくあります。ただし、正論理は常に負論理よりも読みやすく、理解しやすいものです。そのような場合、ド・モルガンの法則として知られているものを適用して、式全体を正にすることができます。その規則は次のとおりです。「関係演算子を補完しながら、すべての論理式コンポーネントに NOT 演算子を適用して括弧を削除します。」例: !(x&&y || !z) は !x || になります。!y && z.