Difference between revisions of "Cmp yesno"

From EjudgeWiki
 
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
Стандартная проверяющая программа cmp_yesno предназначена для сравнения ответов Yes или No.
+
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Проверяющие программы]]/[[Стандартные проверяющие программы]]/[[cmp_yesno]]
  
Если файл результата работы тестируемой программы не содержит строку YES или NO (без учёта регистра), или кроме этой строки содержит другие непробельные символы, проверяющая программа диагностирует [[ошибка формата результата|ошибку формата результата]].
+
Стандартная проверяющая программа cmp_yesno предназначена для сравнения ответов YES или NO. В ответе тестируемой программы должно использоваться то же самое сочетание заглавных и строчных букв, что и в эталонном ответе.
  
Если файл с эталонным ответом не содержит строку YES или NO (без учёта регистра), или кроме этой строки содержит другие непробельные символы, проверяющая программа диагностирует [[внутренняя ошибка тестирования|внутреннюю ошибку тестирования]].
+
Файл результата работы программы должен быть [[текстовый файл|текстовым файлом]] и содержать единственный [[элемент ввода]], то есть кроме YES или NO допускаются только пробельные символы. При нарушении этих условий, или если файл результата работы тестируемой программы не содержит ни строку YES, ни строку NO (без учёта регистра), проверяющая программа диагностирует [[ошибка неправильного формата результата|ошибку неправильного формата результата]].
 +
 
 +
Файл эталонного ответа должен быть текстовым файлом и содержать единственный элемент ввода. При нарушении этих
 +
условий, или если файл с эталонным ответом не содержит строку YES или NO (без учёта регистра), проверяющая программа диагностирует [[внутренняя ошибка проверки|внутреннюю ошибку проверки]].
  
 
Если ответ тестируемой программы не совпадает с эталонным ответом при сравнении без учёта регистра букв, проверяющая программа диагностирует [[неправильный ответ]].
 
Если ответ тестируемой программы не совпадает с эталонным ответом при сравнении без учёта регистра букв, проверяющая программа диагностирует [[неправильный ответ]].
  
Если после этого ответ тестируемой программы не совпадает с эталонным ответом при побайтовом сравнении, проверяющая программа диагностирует [[внутренняя ошибка тестирования|внутреннюю ошибку тестирования]].
+
Если после этого ответ тестируемой программы не совпадает с эталонным ответом при побайтовом сравнении, проверяющая программа диагностирует [[внутренняя ошибка проверки|внутреннюю ошибку проверки]].
 +
 
 +
Если установлена переменная окружения <tt>CASE_INSENSITIVE</tt>, сравнение ответов ведется без учета регистров, то есть ответы <tt>No</tt> и <tt>no</tt> считаются равными.
 +
 
 +
(С версии [[Изменения в версии 2.3.25|2.3.25]])
 +
Если установлена переменная окружения <tt>EJ_REQUIRE_NL</tt>, то вывод тестируемой программы проверяется на наличие символа \n в конце. Если символ \n отсутствует, проверяющая программа завершается с вердиктом [[ошибка неправильного формата результата]].

Latest revision as of 06:18, 17 November 2012

Навигация: Главная страница/Система ejudge/Использование/Проверяющие программы/Стандартные проверяющие программы/cmp_yesno

Стандартная проверяющая программа cmp_yesno предназначена для сравнения ответов YES или NO. В ответе тестируемой программы должно использоваться то же самое сочетание заглавных и строчных букв, что и в эталонном ответе.

Файл результата работы программы должен быть текстовым файлом и содержать единственный элемент ввода, то есть кроме YES или NO допускаются только пробельные символы. При нарушении этих условий, или если файл результата работы тестируемой программы не содержит ни строку YES, ни строку NO (без учёта регистра), проверяющая программа диагностирует ошибку неправильного формата результата.

Файл эталонного ответа должен быть текстовым файлом и содержать единственный элемент ввода. При нарушении этих условий, или если файл с эталонным ответом не содержит строку YES или NO (без учёта регистра), проверяющая программа диагностирует внутреннюю ошибку проверки.

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

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

Если установлена переменная окружения CASE_INSENSITIVE, сравнение ответов ведется без учета регистров, то есть ответы No и no считаются равными.

(С версии 2.3.25) Если установлена переменная окружения EJ_REQUIRE_NL, то вывод тестируемой программы проверяется на наличие символа \n в конце. Если символ \n отсутствует, проверяющая программа завершается с вердиктом ошибка неправильного формата результата.