Meh. They may "look" clever, but I have my doubts whether ternary operators or "standard conversion routines" like the one involving multiply will end up being any smaller or quicker than the "obvious"
result = 0;
if (intNo1)
result += 0b10000000;
if (intNo2)
result += 0b01000000;
if (intNo3)
result += 0b00100000;
if (intNo4)
result += 0b00010000;
:
(the "ternary operator" example should produce nearly identical code; It implements nearly exactly the same logic. But telling a beginner to go off and use one of the more obscure language features seems cruel...)
If your integers were in a nice array instead of separate variables, this could be put into a short loop...