static void Main(string[] args) { var perfectDisjunctionNormalForm = new PerfectDisjunctionNormalFormBinary( BitTools.GetOutputBool(KaterynaBodnarchukTask.KateBodnarchukCase)); uint input = uint.Parse(Console.ReadLine()); bool result = perfectDisjunctionNormalForm.Evaluate(input); Console.WriteLine(result ? 1 : 0); Console.ReadKey(); }
public void TestPerfectDisjunctionNormalForm() { bool[] outputsBool = BitTools.GetOutputBool(KaterynaBodnarchukTask.KateBodnarchukCase); var perfectDisjunctionNormalForm = new PerfectDisjunctionNormalFormBinary(outputsBool); var perfectConjunctionNormalForm = new PerfectConjunctionNormalFormBinary(outputsBool); for (uint input = 0; input < BitTools.rowsCount; input++) { bool expected = outputsBool[input]; bool actualPerfectDisjunctionNormalForm = perfectDisjunctionNormalForm.Evaluate(input); bool actualPerfectConjunctionNormalForm = perfectConjunctionNormalForm.Evaluate(input); Assert.AreEqual(expected, actualPerfectDisjunctionNormalForm); Assert.AreEqual(expected, actualPerfectConjunctionNormalForm); } }