update sicp: answer(2.31)
update sicp: answer(2.32)