Идеальный отчет по программированию: листинги кода по ГОСТ

Требования нормоконтроля к исходному коду

В отчетах по программированию, вычислительной математике и системному администрированию листинг программы является главным доказательством работоспособности выполненного задания. Согласно ГОСТ 7.32-2017 и методическим указаниям вузов:

  • Код оформляется моноширинным шрифтом (Courier New, Consolas) меньшего кегля (10–12 пт при основном тексте 14 пт).
  • Каждый листинг должен иметь порядковый номер и содержательное название: например, «Листинг 1.1 — Функция быстрой сортировки массива».
  • Длинные фрагменты кода (свыше 1–2 страниц) обязательно выносятся в приложения диплома или курсовой работы, а в основном тексте отчета остаются только ключевые функции и алгоритмы.

Отчет по лабораторной программирование шаблон: структура документа

Классический отчет по лабораторной программирование шаблон содержит следующие обязательные разделы:

  1. Титульный лист (кафедра, дисциплина, вариант, ФИО студента и преподавателя).
  2. Цель работы и техническое задание.
  3. Описание архитектуры и алгоритма решения (с блок-схемой).
  4. Ключевые листинги программного кода.
  5. Скриншоты работы программы по ГОСТ и тестовые наборы данных.
  6. Выводы по проделанной работе.

Оформление листингов в отчете: пакет listings и кириллица

Правильное оформление листингов в отчете настраивается через пакет listings в преамбуле LaTeX документа:

LaTeX
\usepackage{listings}
\usepackage{xcolor}

\lstset{
    basicstyle=\ttfamily\small,       % Моноширинный шрифт меньшего кегля
    numbers=left,                     % Нумерация строк слева
    numberstyle=\tiny\color{gray},     % Стиль номеров строк
    stepnumber=1,
    numbersep=8pt,
    frame=single,                     % Тонкая рамка вокруг листинга
    tabsize=4,
    breaklines=true,                  % Автоматический перенос длинных строк
    keywordstyle=\color{blue}\bfseries,
    commentstyle=\color{teal}\textit,
    stringstyle=\color{red},
    captionpos=t                      % Подпись НАД листингом по ГОСТ
}

В тексте программы фрагмент вставляется через окружение lstlisting:

LaTeX
\begin{lstlisting}[language=Python, caption={Функция вычисления факториала}]
def factorial(n: int) -> int:
    """Вычисление факториала числа n"""
    if n <= 1:
        return 1
    return n * factorial(n - 1)
\end{lstlisting}

Импорт кода напрямую из файлов программ

Вместо копирования кода вручную через буфер обмена гораздо надежнее подключать файлы проекта напрямую через команду \lstinputlisting:

LaTeX
% Вставка всего файла с кодом
\lstinputlisting[language=C++, caption={Главный модуль main.cpp}]{src/main.cpp}

% Вставка только диапазона строк с 15 по 45
\lstinputlisting[language=C++, firstline=15, lastline=45, caption={Алгоритм Дейкстры}]{src/graph.cpp}

При таком подходе любые изменения в вашем коде моментально отражаются в отчете при очередной компиляции.

Современная альтернатива: пакет minted

Если требуется подсветка синтаксиса полиграфического уровня, используют пакет minted на базе библиотек Pygments. Он обеспечивает безупречное выделение языковых конструкций для сотен языков (Rust, Go, Kotlin, Swift, SQL) с идеальной передачей русских комментариев.

Практические советы

1

Русские комментарии в listings

Чтобы кириллица в комментариях отображалась без артефактов, добавьте параметр: keepspaces=true, extendedchars=true.

2

Слово «Листинг» в заголовке

Чтобы заменить английское слово «Listing» на русское по ГОСТ, добавьте строчку: \renewcommand{\lstlistingname}{Листинг}.

Попробуйте прямо сейчас

Сдавайте лабораторные с первого раза в Labkeeper

Онлайн-редактор с готовыми шаблонами отчетов по ГОСТ, поддержкой листингов кода и быстрой компиляцией в PDF.

LaTeX editor screenshot
  • Полновесная компиляция: Получайте PDF профессионального качества с помощью встроенного LaTeX-компилятора.
  • 60 секунд на выполнение: Работайте со сложными документами без ограничений — лимит времени компиляции в разы выше, чем в аналогичных сервисах.
  • Умная конвертация: Любые вычислительные формулы автоматически преобразовываются в красивый LaTeX
  • Гибридный синтаксис: Используйте легковесные вставки Markdown прямо в сложном LaTeX-коде для ускорения работы.
bg

Другие статьи