How to fix this error?
void reflexive(int a[], int sizeOfA, int b[], int sizeOfB){
int i, j;
bool test;
bool hold = true;
for(i = 0; i < sizeOfA; i++)
{
if(hold == true)
{
for(j = 0; j < sizeOfB;)
{
if(b[j]==a[i] && b[j+1]==a[i])
{
hold = true;
break;
}
else
{
hold = false;
j++;
}
}
}
}
if(hold == true)
{
test = true;
cout << "Reflextive - Yes" << endl;
}
else
{
test = false;
cout << "Reflextive - No" << endl;
}
}
class Relation
{
private:
bool** mMatrix;
int mSize;
void init()
{
mMatrix = new bool*[mSize];
for (int i = 0; i < mSize; i++)
{
mMatrix[i] = new bool[mSize];
}
}
public:
Relation(int size)
{
mSize = size;
init();
}
/****************************************************************************
* Relation Member Functions
***************************************************************************/
/****************************************************************************
* R is Reflexive if M[i][i] = 1 for all i
***************************************************************************/
bool Relation::isReflexive()
{
for (int i = 0; i < mSize; i++)
{
if (!mMatrix[i][i])
return false;
}
return true;
}
/****************************************************************************
* R is Irreflexive if M[i][i] = 0 for all i
***************************************************************************/
bool Relation::isIrreflexive()
{
for (int i = 0; i < mSize; i++)
{
if (mMatrix[i][i])
return false;
}
return true;
}
/****************************************************************************
* R is Nonreflexive if R is either not reflexive or not irreflexive. There
* is a more efficient way to test for nonreflexive, but for learning purposes
* I chose this inefficient way.
***************************************************************************/
bool Relation::isNonreflexive()
{
return (!(isReflexive() || isIrreflexive()));
}
Comments
Leave a comment