int ifun_SetA(int &iModule) { int iA, iLambda, iMaksLambda=0; int *iTabA = ifun_MakeTab(100); // 100 bo po ch wiecej i tak nie bedzie a nie bede kombiowal for (int i = 0, iA = 2, iLambda = 1; iA < iModule; iA++, iLambda++, i++) { // Sprawdzamy każde a mniejsze od m, kazda lambde, i do zwiekszania tablicy? int iPowAandLambda = pow(iA, iLambda); while (bfun_NWD(iA, iModule) == false) { // Ktore nie ma wspolnych dzielnikow z m while (iPowAandLambda % iModule == 1) { // A gdy znajdziemy takie a^l dla ktorego a^l % m = 1 if (iLambda > iMaksLambda) { iMaksLambda = iLambda; // Jesli jest wieksza to ustawiamy ja jako max i // wyzerowac tablice i dodac a jako pierwszy } if (iLambda == iMaksLambda) { // A jak sa rowne to tylko dodajemy a jako kolejny wyraz do tab } } } } }