Как я могу проверить исходный код домашнего задания на плагиат?
Как мне сказать, что два исходных кода (независимо от их языка C,Java,Lisp...) имеют четкие признаки того, что они могут быть плагиатом друг друга?
Справочная информация: я собираюсь дать свой первый семинар по компьютерным языкам. Мы подготовили небольшие упражнения для основных языков программирования, таких как C/C++, Python, Java,... но также для OCaml, Haskell,..., чтобы дать студентам некоторое практическое введение (также в парадигмы программирования). По нашим оценкам, около 300 студентов с более чем 50 задачами программирования на человека. Таким образом, один человек не может проверить все домашние задания.
Я предполагаю, что методы борьбы с плагиатом, используемые для естественных языков (эссе, статьи, главы книг и т. Д.), Не будут работать для исходного кода, верно? Также решения этих задач программирования будут иметь внутреннее сходство из-за требуемого интерфейса.
Я провел небольшой поиск и обнаружил: MOSS упоминается в: Проверка плагиата кода с помощью JavaScript и Переименование переменных для обнаружения плагиата для C / C++
1 ответ
Награда небольшой приз за его обнаружение. Учитывая возможность пары пива, студенты будут часами перетекать в сеть, ища совпадения из материалов других студентов.
С большими штрафами за преступления, это самофинансирование и вознаграждение студентов, которые делают свою собственную работу - они хотят пива и не собираются оставлять себя открытыми для мести, занимаясь плагиатом своей работы!