Exercises in problem solving with high level languages