Mixed types in expressions

IDSTAT-7
TitleDo not mix operand or operator types in an expression.
PriorityStrongly recommended
DescriptionDo not mix operand or operator types in an expression. For example, do not mix logical and numerical operators in an expression to prevent unexpected results.
RationaleReadability, Robustness

Avoid:

d = a * b && c;

Instead use:

isValid = a * b > 0;
d       = isValid && c;