Объектно-ориентированное программирование на C++. Андрианова А.А - 199 стр.

UptoLike

Объектно-ориентированное программирование на С++
}
// метод проверки, лежит ли точка на границе множества
bool Set::IsOnBound(Point pt)
{
// точка лежит на границе, если выполняются все
// ограничения и хотя бы одно из них – как равенство
if (Belongs(pt))
for(int i = 0; i < n; i++)
if (constraints[i].IsOnBound(pt))
return true;
return false;
}
// функция вывода системы ограничений,
// определяющих множество
ostream& operator << (ostream& out, Set& set)
{
for(int i = 0; i < set.n; i++)
out << set.constraints[i];
return out;
}
void main(void)
{
Set set(3);
cout << set;
Point p1={0,1}, p2={1,1};
if(set.Belongs(p1))
cout << "Точка (0,1) принадлежит множеству"
<< endl;
else
cout<< "Точка (0,1) не принадлежит множеству"
<< endl;
if(set.IsOnBound(p1))
cout << "Точка (0,1) лежит на границе множества"
<< endl;
else
cout << "Точка (0,1) не лежит на границе множества"
<< endl;
if(set.Belongs(p2))
cout << "Точка (1,1) принадлежит множеству"
<< endl;
else
cout<< "Точка (1,1) не принадлежит множеству"
<< endl;
if(set.IsOnBound(p2))
cout << "Точка (1,1) лежит на границе множества"
199
                     Объектно-ориентированное программирование на С++
}

// метод проверки, лежит ли точка на границе множества
bool Set::IsOnBound(Point pt)
{
     // точка лежит на границе, если выполняются все
     // ограничения и хотя бы одно из них – как равенство
     if (Belongs(pt))
          for(int i = 0; i < n; i++)
               if (constraints[i].IsOnBound(pt))
                    return true;
     return false;
}

// функция вывода системы ограничений,
// определяющих множество
ostream& operator << (ostream& out, Set& set)
{
     for(int i = 0; i < set.n; i++)
          out << set.constraints[i];
     return out;
}

void main(void)
{
     Set set(3);
     cout << set;
     Point p1={0,1}, p2={1,1};
     if(set.Belongs(p1))
          cout << "Точка (0,1) принадлежит множеству"
                                            << endl;
     else
          cout<< "Точка (0,1) не принадлежит множеству"
                                            << endl;
     if(set.IsOnBound(p1))
          cout << "Точка (0,1) лежит на границе множества"
                                            << endl;
     else
     cout << "Точка (0,1) не лежит на границе множества"
                                            << endl;
     if(set.Belongs(p2))
          cout << "Точка (1,1) принадлежит множеству"
                                            << endl;
     else
          cout<< "Точка (1,1) не принадлежит множеству"
                                             << endl;
     if(set.IsOnBound(p2))
          cout << "Точка (1,1) лежит на границе множества"

                                                                 199