Контрольная работа: Фундаментальная группа. Конечные поля
if( A->coef[i] != B->coef[i] )
return false;
return true;
}
int obr(int a)
{ a = 5 - a;
a %= 5;
return a;
}
Polynom *Polynom :: operator %(Polynom *B)
{ Polynom *tmp = this;
if( tmp->deg < B->deg )
{ return tmp;
}
for(int i = 0; i <= B->deg-tmp->deg; i++)
if(tmp->coef[i] >= 1)
{ int tmp_coef = tmp->coef[i];
tmp->coef[i] = 0;
for(int j = 1; j <= B->deg; j++)
{ tmp->coef[j] += obr(B->coef[j])*tmp_coef;
tmp->coef[j] %= 5;
}
}
tmp = tmp->norm();
return tmp;
}
void Polynom :: operator++()
{ bool flag = false;
for(int i = deg; i >= 0; i--)