|
1 / 1 / 0
Регистрация: 17.03.2010
Сообщений: 5
|
|
Побитовые опреции в си.Как решить ???19.03.2010, 01:46. Показов 3738. Ответов 16
Метки нет (Все метки)
Привет)))
Дано длинное целое неотрицательное число. Получить число, инвертируя его нечетные биты.Если можно код с коментариями...
0
|
|
| 19.03.2010, 01:46 | |
|
Ответы с готовыми решениями:
16
Условие выполнения опреции при наличии более двух условий
Побитовые операции (программа, которая интерпретирует старшие 3 бита как некоторое число n...) |
|
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
||||||
| 19.03.2010, 02:13 | ||||||
|
допустим тип числа int
0
|
||||||
|
3604 / 2744 / 356
Регистрация: 11.03.2009
Сообщений: 6,306
|
|
| 19.03.2010, 03:03 | |
|
for(i = 1; i < size; i += 2)
0
|
|
|
Модератор
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
|
||||||
| 19.03.2010, 10:34 | ||||||
0
|
||||||
|
38 / 24 / 4
Регистрация: 21.02.2009
Сообщений: 249
|
|
| 22.03.2010, 22:42 | |
|
M128K145, можеш разьяснить пожалуйста что выполняется на каждом шаге.
easybudda, спасибо конечно, но О_О
0
|
|
|
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
||||||
| 22.03.2010, 23:16 | ||||||
|
кст, а ведь я с решением обманул
![]() Вот так правильно
2. находим количество бит - size 3. проходим по битам нашего числа 4. если индекс бита четный, то копируем бит в соответствующий бит числа rez 5. если индекс бита нечетный, то копируем инвертированый бит в соответствующий бит числа rez
1
|
||||||
|
38 / 24 / 4
Регистрация: 21.02.2009
Сообщений: 249
|
||
| 23.03.2010, 10:19 | ||
|
((i & 1) ? (chislo>>i) а >> знак это что? этот код с++? а на с как он будет? скажи пожалуйста.а то недавно си начали еще много чего не понятно=(
0
|
||
|
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|||||||||||
| 23.03.2010, 10:45 | |||||||||||
|
Этот код одинаково успешно выполнится на С и С++
1
|
|||||||||||
|
|
||||||
| 23.03.2010, 11:08 | ||||||
|
А чего ж так усложнять то
1
|
||||||
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
||||||
| 23.03.2010, 12:20 | ||||||
0
|
||||||
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
| 23.03.2010, 16:07 | |
|
2fasked: биты всегда нумеровались с 0-го, а не с 1-го !
Значит нужно инвертировать 1-ый, 3-ий, 5-ый, .... Маска будет 0xAAAAAAAA Добавлено через 2 минуты 2Patch: лучше взять unsigned chislo= 123456; А то при инвертировании 31-го бита получим отрицательное число.
0
|
|
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
||
| 23.03.2010, 18:11 | ||
|
считаем-же с 0-его бита. хотя, как надо нумеровать биты из контекста задачи не ясно... ![]() 0 - это четный, или нет?
0
|
||
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
||
| 24.03.2010, 10:39 | ||
31 - нечетный Для операции с битами лучше всегда использовать unsigned, unsigned long - дабы не было приколов со знаками.
0
|
||
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|||
| 24.03.2010, 11:15 | |||
|
я понял так, как обычно говорят преподаватели: что нужно инвертировать каждый ВТОРОЙ бит, начиная с первого. по определению:
значит, скорее всего, постановщик задачи нумеровал биты не с 0, а с 1. ...но что имел ввиду постановщик задачи - можно лишь догадываться.
0
|
|||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||
| 24.03.2010, 11:18 | ||
|
0
|
||
| 24.03.2010, 11:18 | |
|
Помогаю со студенческими работами здесь
17
Арифметические опреции над целыми числами Побитовые операции: как работает этот сдвиг вправо и логическое "И"(&) ? Побитовые НЕ
Побитовые операции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|