Diferente pentru documentatie/ghid-evaluator intre reviziile #3 si #4

Nu exista diferente intre titluri.

Diferente intre continut:

Pentru problemele in care raspunsul nu este unic, site-ul *infoarena* a conceput sa foloseasca un program extern pentru verificarea raspunsului. Acest program se numeste _evaluator_, si poate fi scris in $C, C++$ sau $Pascal$. Pentru a realiza un evaluator compatibil cu design-ul infoarena trebuie respectate niste reguli:
* In functie de numele introdus in setarile problemelei pentru evaluator, fisierul care va fi atasat la pagina problemei trebuie prefixat cu cuvantul $grader_$ (spre exemplu daca s-a introdus in setarile problemei $eval.cpp$ fisierul care trebuie atasat se va numi $grader_eval.cpp$)
* Daca numele problemei este $prob$ fisierul de intrare care se evalueaza se numeste $prob.in$, fisierul de iesire al utilizatorului se numeste $prob.out$, iar fisierul de evaluare (care contine informatii despre raspunsul corect pentru testul respectiv) se numeste $prob.out$. Nu se recomanda folosirea altor fisiere in timpul evaluarii.
* Odata ce s-a evaluat fisierul de iesire, mesajul trimis de evaluator trebuie afisat la $stderr$, iar punctajul la $stdout$, iar executia programului de evaluare trebuie terminata. Se recomanda scrierea unei functii care sa faca aceste lucruri:
** asemanator cu $scanf$ , functia $gets / fgets$ returneaza o valoarea diferita de $0$ daca a efectuat cu succes citirea
Toate aceste verificari sunt *necesare*, in caz contrar evaluator poate crapa daca fisierul de iesire al utilizatorului nu respecta formatul de iesire.
* Desi se presupune ca fisierul de intrare ($.in$) si fisierul de verificare ($.ok$) sunt corecte, se recomanda sa se verifice daca acestea sunt intr-adevar valide folosind acelasi tratament ca pentru fisierul de iesire al utilizatorului. In plus, se poate verifica daca fisierul de intrare respecta intr-adevar restrictiile din enuntul problemei.
* Desi se presupune ca fisierul de intrare ({$.in$}) si fisierul de verificare ({$.ok$}) sunt corecte, se recomanda sa se verifice daca acestea sunt intr-adevar valide folosind acelasi tratament ca pentru fisierul de iesire al utilizatorului. In plus, se poate verifica daca fisierul de intrare respecta intr-adevar restrictiile din enuntul problemei.
Daca ai probleme cu redactarea unui evaluator, poti contacta un 'administrator':echipa-infoarena sau o persoana 'implicata':implica-te in proiectul 'Extinde Arhiva':implica-te/extinde-arhiva.
Exemple de verificatoare pentru diverse probleme:
* Buline
* Ghiozdan
* Shop
* Zero 2
* 'Buline':ghid-evaluator?grader_buline.cpp
* 'Ghiozdan':ghid-evaluator?grader_ghiozdan.cpp
* 'Shop':ghid-evaluator?grader_shop.cpp
* 'Zero 2':ghid-evaluator?grader_zero2.cpp

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.