solve chap3.q0007, q0008(not tested)