Станислав написа:Баронов, какво точно си имал впредвид? Не мога да те разбера?
Така се проверява програмистки дали число е степен на 2. Мислех, че човекът може би иска да пише програма и в такъв случай това ще му помогне. Побитовият оператор & в С/С++, JAVA работи като логическото И (0&0 = 1&0 = 0&1 = 0; 1&1 = 1) приложено за всеки от битовете на числото. Лесно се вижда, че х&(х-1) затрива най-младшия бит на х, който има стойност 1. Т.е. х&(х-1) == 0 <=> х е степен на 2.