Diferente pentru ghid-adaugare-interactive intre reviziile #1 si #13

Nu exista diferente intre titluri.

Diferente intre continut:

De a lungul ghidului vom folosi exemple din problema "cbinteractiv":https://infoarena.ro/problema/cbinteractiv.
 
h2. Ghidul de adăugare al problemelor interactive
 
Problemele interactive se folosesc de un program grader şi de un program interactor. Atunci când este evaluată problema pe infoarena, programul interactor este linkuit împreună cu sursa voastră de către programul "connect":ghid-adaugare-interactive?action=download&file=connect.c&safe_only=false ("o scurtă prezentare a programului connect":documentatie/tutorial)
 
"Graderul":ghid-adaugare-interactive?action=download&file=grader_eval.cpp&safe_only=false şi "interactorul":ghid-adaugare-interactive?action=download&file=grader_interact.cpp&safe_only=false au în comun verdictele posibile de evaluare (enum Status) şi o constanta pentru verificarea integrităţii fişierului de ieşire.
Exemplele de grader şi interactor sunt folosite la problema "cbinteractiv":problema/cbinteractiv , cu excepţia constantei de verificare care este diferită.
 
Această constanta de verificare a integrităţii este necesară deoarece graderul şi interactorul comunica la rândul lor printr-un fişier care poate fi (dar nu ar trebui) să fie accesat şi de către sursa concurentului. Pentru a combate această posibilă vulnerabilitate există o soluţie foarte uşor de implementat, anume interactorul afişează un număr secret şi verdictul său în fişierul comun, iar graderul verifică dacă numărul din fişier coincide cu numărul sau secret. *Nu faceţi graderele reale din probleme publice deoarece există riscul ca _cineva_ să încerce să le spargă.*
 
Graderul comunică mai departe cu monitorul de evaluare prin _stdout_ şi _stderr_. Pe _stdout_ el transmite punctajul, iar pe _stderr_ transmite mesajul de evaluare.
 
Exemplele de grader, interactor şi connect sunt încărcate în ataşamentele acestei pagini.

Diferente intre securitate:

public
protected

Topicul de forum nu a fost schimbat.