El software de evaluación Cena ofrece la posibilidad de utilizar validadores personalizados para la puntuación. Puede escribirse en C++ o Pascal, donde Pascal necesita cargar la biblioteca de tiempo de ejecución proporcionada por el software.
Código de referencia del validador personalizado (SPJ) de C++: #include#include#defineDatanameName//Nombre de archivo de la pregunta de evaluación (sin incluir el sufijo) usandonamespacestd;FILE*fscore,* freport,* fstd,*fin,*fout;intJudge(){intre=0;//Se utiliza para devolver la puntuación//Código de evaluación adicional aquí, el siguiente es el código SPJ para la competencia de autos inteligentes NOI2011Day1T2 doublex,y,dif;fscanf( fstd,%lf,&x);fscanf(fout,%lf,&y);dif=(x>y)?(x-y):(y-x);re=dif<=0.000001;re*=10;fprintf(freport, Std:%.10lf\nYourAns:%.10lf\nDiffer:%.10lf\n,x,y,dif);//Volver al contenido que se muestra en el cuadro de diálogo después de la evaluación, o no regresar contenidore;}intmain( intargc,char*argv []){fscore=fopen(score.log,w);//Abre el archivo de puntuación freport=fopen(report.log,w);//Abre el archivo de informe fstd=fopen(argv[2) ],r);// Abra el archivo de salida estándar del punto de prueba intscore=atoi(argv[1]);//Obtenga la puntuación del punto de prueba fin=fopen(DataName.in,r);//Datos originales fout=fopen(Dataname.out,r);/ /Salida del usuario fprintf(fscore,%d,Judge()); //Devuelve la puntuación fclose(fscore); //Cerrar el archivo de puntuación fclose(freport); Cerrar el archivo del informe return0;}