Вывод в консоли начинается не с первого элемента, а с какого-то произвольного - C (СИ)
Формулировка задачи:
int X = word_module;
int SIZE = pow(2., X);
int COMMON_SIZE = SIZE * X;
int **array_by_x = (int **)malloc(SIZE * sizeof(int));
for(int i = 0; i < SIZE; ++i)
{
array_by_x[i] = (int *)malloc(X * sizeof(int));
}
// Генератор последовательности 000..0 000..1 ... 111..1
for(int i = 0, j, cur_i; i < SIZE; ++i)
{
for(j = X - 1, cur_i = i; j >= 0; --j)
{
if(cur_i)
{
array_by_x[i][j] = cur_i & 1; // заталкиваем последний бит числа i в массив
cur_i >>= 1; // переходим к следующему биту числа i
}
else
{
array_by_x[i][j] = 0;
}
}
}
/*for(int i = 0, j; i < SIZE; ++i)
{
for(j = 0; j < X; ++j)
{
fprintf(stdout, "%d", array_by_x[i][j]);
}
fprintf(stdout, " ");
}*/
int *array_common = (int *)malloc(sizeof(int) * (COMMON_SIZE));
for(int i = 0, ii = 0, j; i < SIZE; ++i)
{
for(j = 0; j < X; ++j, ++ii)
{
array_common[ii] = array_by_x[i][j];
}
}
fprintf(stdout, "\n");
for(int i = 0; i < pow(2.,X)*X; ++i)
{
printf("%d %d* \n", array_common[i], i);
}Решение задачи: «Вывод в консоли начинается не с первого элемента, а с какого-то произвольного»
textual
Листинг программы
~/prog/c $ ./bits 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111