sicp: answers(2.2~2.3)