Помогите пожалуйста с заданием,я пытаюсь разобраться в работе с битами,но не выходит(((
Функция получает целое без знаковое число Х и массив N целых положительных не равных между собой чисел . Функция анализирует каждое число массива, и если оно меньше 15 и четное, то в бите числа Х , номер которого равен числу , функция устанавливает 1, в противном случае ( меньше 15, но четное) элемент массива удваивается и соответствующий ему бит обнуляется. Если не удалось изменить хотя бы один бит в Х или не удалось изменить ни один элемент массива , то функция возвращает 0, в противном случае функция возвращает преобразованное число Х. подскажите как установить 1 в бит и как обнулить его??? Я читал разные статьи про работу с битами,но не помогает((( Простите за потраченное время.
Битовые операции
Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain
Я далек от ситнаксиса С++, напишу универсальным выражениемподскажите как установить 1 в бит и как обнулить его??? Я читал разные статьи про работу с битами,но не помогает(((
Установить в числе Х бит с номером К
x = x OR (1 SHL k)
Обнулить в числе Х бит с номером K
x = x AND NOT (1 SHL k)
It's a long way to the top if you wanna rock'n'roll