Automatic Scoring in Programming Examinations for Beginners

Automatic Scoring in Programming Examinations for Beginners
复制标题

初学者编程考试自动评分

DOI:
10.1007/978-3-031-17583-1_10
复制
发表时间:
2022
期刊:
Knowledge-Based Software Engineering: 2022 - Proceedings of the 14th International Joint Conference on Knowledge-Based Software Engineering
影响因子:
--
通讯作者:
Masami Hagiya
Masami Hagiya
中科院分区:
--
文献类型:
--
作者:
Yoshinori Tanabe;Masami Hagiya

文献摘要

相似文献

在评价初学者的程序设计能力时,让他们编写程序来解决问题并判断其正确性是一个标准的方法。为了将该方法应用于由大量人参加的考试中,需要自动评估程序的正确性。在准备输入及其预期输出并将其与提交程序的结果进行比较的方法中,错误的程序可能会被错误地判断为正确。在这项研究中,我们提出了一种基于Presburger算法的编程语言,它可以自动判断任何程序的正确性。此外,为了减轻初学者由于实现自动评分的必要限制而容易绊倒的困难,我们引入了一个环境,在该环境中,只有符合限制的程序才能通过组合块来创建。经证实,一些典型问题的答案可以创建和自动评分。
When evaluating a beginners’ ability in programming, it is a standard method to have them write programs to solve problems and judge their correctness. To apply this method in examinations that are taken by a large number of people, it is necessary to automatically evaluate the correctness of the program. In the method of preparing inputs and their expected outputs and comparing them with the outcome of the submitted program, an incorrect program may be mistakenly judged as correct. In this study, we propose a programming language based on Presburger arithmetic that can automatically judge the correctness of any program written in the language. In addition, to alleviate the difficulty that beginners tend to stumble due to the necessary restrictions for realizing automatic scoring, we introduce an environment in which only programs that conform to the restrictions can be created by combining blocks. It was confirmed that the answers to some typical questions can be created and automatically scored.