#pragma hdrstop #include #include #include #include const M=10; //размер исходного массива чисел const N=10; //размер массива двоичного представления числа //--------------------------------------------------------------------------- #pragma argsused int main(int argc, char* argv[]) { int A[M]; //массив чисел int X; //текущее число int i, j; //счетчики цикла int a; //переменная для сдвига int t1[N]; //массивы для хранения двоичной записи int t2[N]; //чисел в прямом и обратном порядке //(10 цифр достаточно для проверки чисел до 1023) for(i=0;i=0;left--) { j=floor(log(X)/log(2)); a=X>>(left); //сдвигаем влево так, чтобы проверяемая цифра становилась последней if (fmod(a,2)==1) //если неделится нацело, то на конце 1 { t1[j-left]=1; // прямой порядок t2[left]=1; // обратный порядок } else //иначе на конце 0 { t1[j-left]=0; // прямой порядок t2[left]=0; // обратный порядок } } // проверяем совподают ли 2 массива двоичной записи числа for(j=0;t1[j]==t2[j];j++) if (j==N-1) cout<