У меня есть следующее упражнение: числа от n0 до n7 представляют собой байты, представленные в двоичной системе. Задача состоит в том, чтобы каждый бит отбрасывался либо снизу, либо если он встречает другой бит, он остается над ним. Вот наглядный пример:
Я понял, что если я применяю побитовое ИЛИ для всех чисел от n0 до n7, то всегда правильный результат для n7:
n7 = n0 | n1 | n2 | n3 | n4 | n5 | n6 | n7;
Console.WriteLine(n7); // n7 = 236
К сожалению, я не могу думать о правильном пути для остальных байтов n6, n5, n4, n3, n2, n1, n0. У вас есть идеи?