public CKarnaughTable(EKarnaughTableType tableType) { int mintermsCount = -1; m_tableType = tableType; switch (tableType) { case EKarnaughTableType.Karnaugh3Var: mintermsCount = 8; m_tableLetters = new char[3] { 'A', 'B', 'C' }; break; case EKarnaughTableType.Karnaugh4Var: mintermsCount = 16; m_tableLetters = new char[4] { 'A', 'B', 'C', 'D' }; break; } // Create minterms of table m_minterms = new CMinterm[mintermsCount]; for (int i = 0; i < mintermsCount; i++) { m_minterms[i] = new CMinterm(); m_minterms[i].SetIndex(i); } }
public string GetBinaryIndex(EKarnaughTableType tableType) { int digitsCount; if (tableType == EKarnaughTableType.Karnaugh3Var) { digitsCount = 3; } else { digitsCount = 4; } return(BinaryManip.GetBinaryValue(m_mintermIndex, digitsCount)); }