Chapter 6 Algorithms: The Thinking Behind the Programming

From [xkcd](https://xkcd.com).

Figure 6.1: From xkcd.

This chapter is the most important and arguably the hardest lesson in 71 Python. The most frequent complaint of people starting programming is the challenge of setting up a coding solution to a problem, on their own. The current lesson focuses on coming up with a solution and translating that solution into a set of instructions that Python can understand. It is not about fancy syntax or clever code. You can worry about improving your solution (i.e. making it more efficient and clever) later. Remember that it is often useful to break a big problem into smaller, more manageable units. Try to reuse strategies you are familiar with by looking for similarities of past problems and the current one. Also, try to simplify further by discarding unnecessary details. Finally, please be patient and work out all the activities in this lesson as it will go a long way towards making you an independent programmer. Have Fun!