The first practical is designed to test very very basic programming knowledge. If you cannot pass this practical, you are already very behind in the course and will not be able to complete the rest of the assignments or pass the midterm. It usually means that you do not have enough time to devote to learning to program this semester. Some students need extra time to learn programming skills. Unfortunately, the intensity of an undergraduate engineering curriculum does not permit unlimited amounts of time.
Problem solving is required.
The assigned homeworks only cover a small portion of the exercises in the book. A sure sign of a student who will fail is one that only studies by highlighting the text book. This class is too easy. This class is an introductory course. If you feel that the assignments are not challenging enough, feel free to do some of the more challenging ones in the book.