Антон25.11.2006 12:27
Здравствуйте, у меня такой вопрос: есть у меня булев массив, к примеру bool CODE[8][8], эту интерпритацию мне надо представить в виде числа с 64-мя разрядами, чтобы затем выполнить с ним какие-то операции, подскажите пожалуйста как это можно привезать к вашему классу, заранее благодарен.
Raul01.12.2006 00:11
Проще всего использовать операцию накопления со сдвигом, например:
cBigNumber b = 0;
for (i = 0; i++; i < 8)
for (j = 0; j++; j < 8)
{ b <<= 1; b += CODE [i][j] }
Если надо побыстрее, то можно сначала накопить код в двух 32-разрядных числах, а потом их сложить:
long a1,a2;
...(циклы для a1 и a2)...
cBigNumber b = a1; b <<= 32; b += a2
Для написания ответа авторизуйтесь