source codes for programming exercise