A problem-solving approach to intermediate algebra