Детектор плагиата программного кода на основе сравнения AST-деревьев

Проект · 10–20 страниц · Информатика · 10-11 класс

Разбор Python-файлов в абстрактное синтаксическое дерево, вычисление дистанции редактирования между деревьями.

Ты пишешь код, а кто-то берёт его без спроса. Как это доказать? AST-дерево — это скелет программы, по нему видно, что куски кода совпадают по структуре, даже если переменные переименованы. Разберёмся, как построить такой детектор с нуля.

Работа по этой теме — за несколько минут. План и структура бесплатно и без регистрации, оплата — только за готовый документ с оформлением по ГОСТ.

Сгенерировать проекта по этой теме

Примерная структура работы

  1. Что такое AST и зачем оно нужно
    • <built-in method title of str object at 0x7f5f1da068d0>
    • <built-in method title of str object at 0x7f5f1da06db0>
    • <built-in method title of str object at 0x7f5f1da06180>
  2. Алгоритм сравнения деревьев
    • <built-in method title of str object at 0x7f5f07f56a30>
    • <built-in method title of str object at 0x7f5f1c088920>
    • <built-in method title of str object at 0x7f5f1da06e80>
  3. Реализация детектора на Python с библиотекой ast
    • <built-in method title of str object at 0x7f5f07fce010>
    • <built-in method title of str object at 0x7f5f1da06250>
    • <built-in method title of str object at 0x7f5f1da06c10>
  4. Тестирование на реальных студенческих работах
    • <built-in method title of str object at 0x7f5f1da12070>
    • <built-in method title of str object at 0x7f5f1c0889d0>
    • <built-in method title of str object at 0x7f5f1da12df0>

Структуру можно менять: перед оплатой вы бесплатно правите главы и параграфы под требования преподавателя.