Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

Venchik

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Код:
#include <iostream>
 
using namespace std;
 
int main()
{
    unsigned char n[8] = {0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80};  
    unsigned char bs = 0;
     
    for(int i = 0; i < 8; i++) //perebor baytov
    {
        bool odd = 0; //flag delaetsya 4etnim dlya togo, 4tobi kogda budet naydena pervaya edinica v bayte, on (flag) stal ne4etnim
         
        for(int j = 0; j < 8; j++) //perebor bitov v bayte
        {
            if(n[i] & (1 << j)) //
                //even = even ? false : true;
                //even ^= 1;
                if (odd == 1) //esli ne4etniy
                    odd = 0; //sdelat 4etnim
                    else odd = 1; //sdelat ne4etnim
        }
         
        //status |= (!even << i);
        if(odd == 1) //esli ne4etniy
            bs = bs | (1 << i); //zapisat 1 v bayt-status
    }
     
    for(i = 0; i < 8; i++)
    {
        cout << hex << int(n[i]) << ": " << dec << bool(bs & (1 << i)) << endl;
    }
     
     
    return 0;
}


Всего записей: 808 | Зарегистр. 24-08-2005 | Отправлено: 10:44 23-10-2006
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru