Abstract
We conducted a research on how we can effectively support learners in their learning of programming methods. Beginners usually can deepen their understanding of programming by encountering errors and correcting them in the programming process. However, beginners sometimes can not easily find their errors in programming by themselves. Therefore, supporting learners in finding the causes of the errors will help them understand programming better. In order to provide learners with effective support, we gave them a test in programming that are repetitive statements which contain control structures. After that, we analyzed the contents of errors beginners are apt to make. The components of repetitive construct are "for" and "while" statements. We did a cluster analysis to classify the contents of errors and to clarify their similarities and the in probable relations. As a result, we found out the relative structure and the support which was necessary to enhance learning of programming. We also found out that there was no significant difference between the kind of errors related to "for" statements and those of "while" statements, therefore the same kind of support should be required. Under the error patterns, we investigated the useful support for program understanding which corresponds to errors beginners are liable to make.