"Логические задачи" - это познавательно-развлекательный проект для непрокисших мозгов. Задачи на логику, нестандартное мышление.

Задачи на логику и сообразительность

О сайте
Гостевая книга
ЧаВо

Пользователи
RSS

Поиск на сайте





запомнить меня
Зарегистрироваться


Задачи



Данетки


Текущие:

  Мой любимый грех (с)
  Математика в архитектуре
  Не сыпь мне соль на рану
  «Геометрическая»
  Высказывание Ломоносова
  Наверное, не про яблоки
  Комерция
  Везде градусы
  Вагончик тронется, вагончик тронется..
  Спасибо медикам и католикам))
  Специальная купюра
  Студенческая смекалка
  Эллипс vs Круг
  Современные технологии. Немецкий стандарт.
  Спортивная
  философская
  Про газету
  печатная монета
  Купюра евро
  Древние изобретения
  Биометрические паспорта
  Новый глава
  В далеком созвездии тау Кита... 8)))
  Огородное
  Средневековое строительство
  Жестокое наказание
  Их нравы - 4
  Европейский стандарт

Разгаданные недавно:

  этот модный тандыр
  Из Что-Где-Когда
  Может ли такое быть?
  Что изображено?
  Да на тебе пахать надо!


Справочная



Признаки делимости
Площади фигур



задача: Программистам

Задачу прислал: Админ


Сложность: простаяОбъясните, что делает этот код: ((n & (n – 1)) == 0)
Операция & здесь - побитовое И



Ответ





Решение задачи





Ваши ответы на задачу


ответов: 3

KoKos 2019-01-01 19:22:29 пишет:
:) Ну да, но не настолько любопытно само по себе выражение, сколько его потенциальное использование в виде n = (n & (n - 1)), например.

KoKos 2018-12-27 22:32:35 пишет:
Админ, а можно нескромный вопрос? Где Вы раскопали этот код? 8)
   Админ: В какой-то подборке, обозначенной как "вопросы с собеседований в разные IT-компании" или как-то похоже. Вопрос показался любопытным.

KoKos 2018-12-26 13:29:50 пишет:
Вообще-то поведение может различаться в зависимости от языка/компилятора. Высокоуровневые языки могут плеваться ошибками переполнения при n=0 или n=-МАХ - смотря от объявления n - знаковое или без. :)

Ну а если в дебри не лазить, то возвращает истину тогда и только тогда, когда значение n содержит не более одного установленного бита (то бишь, ноль и всевозможные степени двойки).
   Админ:

Добавьте комментарий:
Автор:

Комментарий:

Пожалуйста, введите символы с картинки:
(подтверждение не требуется для зарегистрированных пользователей)



 







© 2009-201x Логические задачи