Контрольная работа: Моделирование систем
while ( q != NULL && (*Res) == NULL )
{
if ( q->Element[MENT]==1 ) (*Res) = q;
else q = q->Sled;
}
}
void Spisok::Udalenie (svqz *zv, svqz UkStr)
//Удаление из однонапpавленного списка с заглавным звеном
//элемента, на который указывает указатель zv.
{
svqz Z; //"Стаpый" указатель.
svqz UkZv1; //"Hовый" указатель.
if ( (*zv)->Sled != NULL ) (**zv) = *((**zv).Sled);
else
{ Z = UkStr; UkZv1 = UkStr->Sled;
while (UkZv1 != (*zv))
{ Z = UkZv1; UkZv1 = UkZv1->Sled; }
Z->Sled = NULL; delete UkZv1;
}
}
void Spisok::Reshenie()
{
svqz UkStr; //Указательнасписок.
Ref UkUzel; //Рабочий указатель на узел дерева.
Ref UkUzel1; //Рабочий указатель на узел дерева.
SubInt T1,T2;
svqz Res1,Res2;
//Построение первоначальных множеств вершин графа.
Postroenie (&UkStr);