@xpqz Really impressive! What are you going to use it for? As a testing environment for new functionalities, understanding APL more thoroughly or just for fun?
It is built on the principle that to change an odd number to the next lower even number, we simply need to null out the trailing 1 in its binary representation.
However, we actually want the next higher even number, so we work on the negated argument.
First, we add an additional axis ,⍤0 to work on each number separately (otherwise the data bits are contiguous for all elements).
Then we convert to binary with 11⎕DR and reverse for easy access @1 to the last bit.
After that, it is just reversing the entire process.
@Adám Q2017-3 and Q2017-4 are not very complicated. Can you gice me an additional task based on the original problem? (nevertheless still looking for a better solution for Q2017-3, maybe regex)