SICP/chapter_3: exercise 30~32