Difference between revisions of "Cmp file"

From EjudgeWiki
Line 5: Line 5:
 
Если после такой трансформации результат работы тестируемой программы не равен эталонному ответу, проверяющая программа выносит вердикт [[неправильный ответ]].
 
Если после такой трансформации результат работы тестируемой программы не равен эталонному ответу, проверяющая программа выносит вердикт [[неправильный ответ]].
  
 +
(С версии 2.3.20)
 
Если установлена переменная окружения <tt>EJUDGE_NOCASE</tt>, сравнение строк ведется без учета регистра букв
 
Если установлена переменная окружения <tt>EJUDGE_NOCASE</tt>, сравнение строк ведется без учета регистра букв
 
(но только для базовых символов латинского алфавита).
 
(но только для базовых символов латинского алфавита).
 
Переменные окружения можно устанавливать с помощью конфигурационной переменной <tt>[[serve.cfg:problem:checker_env|checker_env]]</tt>
 
Переменные окружения можно устанавливать с помощью конфигурационной переменной <tt>[[serve.cfg:problem:checker_env|checker_env]]</tt>
 
раздела описания задачи.
 
раздела описания задачи.

Revision as of 05:45, 25 December 2011

Стандартная проверяющая программа cmp_file используется для сравнения файла результата работы тестируемой программы и эталонного файла ответа как текстовых файлов.

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

Если после такой трансформации результат работы тестируемой программы не равен эталонному ответу, проверяющая программа выносит вердикт неправильный ответ.

(С версии 2.3.20) Если установлена переменная окружения EJUDGE_NOCASE, сравнение строк ведется без учета регистра букв (но только для базовых символов латинского алфавита). Переменные окружения можно устанавливать с помощью конфигурационной переменной checker_env раздела описания задачи.