excercise 12 algorithms