Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2012, 23:52   #11
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,431
По умолчанию

Код:
#include <stdio.h>
#include<math.h>


void
printbinN(unsigned int a)
{
    int i;
    for (i=31; i>=0;i--)
    {
        if (i%4==3)
            putchar(' ');
		printf("%d",((a>>i)&1));
    }
    putchar('\n');
}

int
main()
{
    unsigned int a,b=0,i,j,q;
    a=375245393;
    printbinN(a);
    do
    {
        b=i=j=q=0;
        while (i<30 && j<32)
        {
            if ((a&(7<<i))==0)
            {
                b|=(6<<j);
                j+=4;
                i+=3;
                q=1;
            }
            else
            {
                b|=((a>>i)&1)<<j;
                i+=1;
                j+=1;
            }
        }
        if (i<32 && j<32)
            b|=(a>>i)<<j;
        a=b;
    }
    while (q);
    printbinN(a);
    return 0;
}
Интересная задачка.
Посмотрите, правильно ли работает мой вариантик.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 08.05.2012, 00:21   #12
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 914
По умолчанию

Я сделал с одним циклом и тоже не уверен, то ли было надо
Автор оказывается повысил шансы:
http://www.programmersforum.ru/showthread.php?t=199314
EUGY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
подсчет битов mercure243 Общие вопросы C/C++ 1 12.03.2012 03:56
Вставка битов Aleks2215 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 09.12.2010 20:32
Перемешивание позиций битов в числе explored Общие вопросы C/C++ 6 27.10.2010 23:14
Замена второго бита в числе SZR Помощь студентам 4 25.01.2008 20:16
Перестановка битов. RegentM Общие вопросы Delphi 3 05.11.2007 17:23