chapter3の問題を実装