Done exercise 6.19、6.20
Done exercise6.21
Done exercise6.22
Done exercise6.23、6.24
Done exercise6.25
Done exercise7.3、7.4