#include "Assignment.h" #include // Constructor Assignment::Assignment( int numVariables ) { this->bValid = false; this->iNumVariables = numVariables; this->pAssignment = new bool[numVariables]; for( int i=0; ipAssignment[i] = false; } // Default Destructor Assignment::~Assignment() { this->bValid = false; this->iNumVariables = 0; if( this->pAssignment != 0 ) delete [] this->pAssignment; this->pAssignment = 0; } // Set a value for a variable void Assignment::SetValue( int varNum, bool value ) { if( (this->pAssignment != 0) && (varNum >= 0) && (varNum < iNumVariables) ) this->pAssignment[varNum] = value; } // Get a value for a variable bool Assignment::GetValue( int varNum ) { if( (this->pAssignment != 0) && (varNum >= 0) && (varNum < iNumVariables) ) return this->pAssignment[varNum]; return false; } // Prints this assignment out void Assignment::Print() { if( this->bValid ) { printf( "(" ); for( int i=0; iiNumVariables; i++ ) { if( this->pAssignment[i] ) printf( " %d", (i+1)); else printf( " %d", (i+1)*(-1) ); } printf( " )\n" ); } else printf( "Fail\n" ); }