Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
BOT
44 / 0 / 0
Регистрация: 26.10.2011
Сообщений: 115
#1

Как правильно объяснить это словами if (!(i & 1)) - C++

23.04.2012, 17:20. Просмотров 1005. Ответов 3
Метки нет (Все метки)

Как правильно объяснить это словами if (!(i & 1))!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2012, 17:20     Как правильно объяснить это словами if (!(i & 1))
Посмотрите здесь:

Написал прогу, не знаю как объяснить правильно!!! C++
C++ Написал прогу, не знаю как объяснить правильно!!!
С && C++ - это плохо? C++
C++ как правильно понять тип bool ? bool true(const string &str) и что дает это значение ?
C++ Как лучше это сделать?. а главное, как правильно? (Информационная система «Железнодорожный вокзал»)
Можно ли сравнивать строковые литералы? как правильно это сделать? C++
Организовать перегрузку оператора = и объяснить для чего это сделано C++
C++ Объяснить, что делает операция *& и чем она отличается от простого указателя?
Нюансы синтаксиса: объяснить смысл записи (struct sockaddr *)&their_addr C++
Проектирование (разработка логики приложения): как это делать правильно? C++
C++ Подскажите пожалуйста как правильно это объяснить, прочитать

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
833 / 517 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
23.04.2012, 18:02     Как правильно объяснить это словами if (!(i & 1)) #2
если i четно

1) (i & 1) - проверяет четно или нечетно i
2) ! - инвертирует результат выражения 1
Avazart
 Аватар для Avazart
7037 / 5214 / 259
Регистрация: 10.12.2010
Сообщений: 22,916
Записей в блоге: 17
23.04.2012, 18:08     Как правильно объяснить это словами if (!(i & 1)) #3
У четных чисел последний бит = 0.
Kuzia domovenok
 Аватар для Kuzia domovenok
1886 / 1741 / 117
Регистрация: 25.03.2012
Сообщений: 5,916
Записей в блоге: 1
23.04.2012, 18:17     Как правильно объяснить это словами if (!(i & 1)) #4
Цитата Сообщение от BOT Посмотреть сообщение
&
это оператор побитового "И"
он берёт двоичное представление двух чисел и побитово выполняет "и"
например
a=5; //0000 0101
b=4; //0000 0100
c=a&b;//0000 0100
бит числа с равен 1, если оба бита операндов равны 1, иначе 0
в нашем случае операция выполняется с числом один
то есть 0000 0001
а это значит, что у a&1 все биты кроме последнего будут нули.
результат зависит от последнего бита числа а
если младший бит а - ноль, то результат будет 0, иначе 1
младший бит ноль будет, если число чётное.
Итак if (x&1){} проверяет число на чётность
Yandex
Объявления
23.04.2012, 18:17     Как правильно объяснить это словами if (!(i & 1))
Ответ Создать тему
Опции темы

Текущее время: 09:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru