Novice Programmers' Reasoning About Reversing Conditional Statements