SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
TUTORIAL ACERCA DEL USO DEL SISTEMA DE
            CALIFICACION
Programming Contest Control (PC2) System
A continuación explicaré detalladamente el uso del sistema de calificación con un par
de ejemplos en los 4 lenguajes disponibles.

Previamente debes asignar el IP del servidor para establecer la conexión y así poder
realizar los envíos (server=localhost: 50002) cambiar por (server=IPdelServer:
50002), esto se tiene que editar en el archivo pc2v9.ini dentro del directorio bin de pc2.




ACM Chapter Cusco                                                                 Página 1
En el desarrollo del concurso, podrás ver el estado del concurso en el scoreboard, para
ello hacer doble click en pc2board.bat dentro del directorio bin de pc2, con un usuario
y contraseña suministrada por los organizadores, por default es

user: scoreboard1
pass: scoreboard1.




Ahora si todo salió bien se generará un directorio html dentro de esta carpeta bin
seleccionar summary.html y podrás tener el status de los envíos en general actualizado
según eventos de envíos de los problemas, aunque se actualiza el archivo html, no se
verá estos cambios hasta que refresques el archivo en el navegador, tendrás que
actualizarlo cada vez para ver los cambios, si deseas que esto se realice
automáticamente sugiero que uses Firefox con un complemento llamado “reloadevery”
luego reiniciar el navegador, dar anticlick en la pestaña del summary.html e indicar la
frecuencia de actualización de este archivo del scoreboard.




ACM Chapter Cusco                                                              Página 2
Ahora cargamos nuestra ventana principal, la ventana de Team, para esto doble click en
pc2team.bat y luego ingresar nuestro nombre de equipo y la contraseña suministrados
por los organizadores del concurso.




ACM Chapter Cusco                                                             Página 3
Luego del login tendremos nuestra ventana principal para realizar nuestros envíos de
nuestros códigos de solución a los problemas.




Como vemos, tenemos la opción de enviar en varios lenguajes de programación.

Ahora vamos con el siguiente ejemplo, donde realizaremos la prueba de
funcionamiento.

Seleccionamos el problema al cual dimos solución y queremos enviarlo para su
respectiva verificación por parte de los jueces con los datos de prueba.




ACM Chapter Cusco                                                              Página 4
El problema de los primos, dice en líneas generales así:

Determinar la cantidad de números primos entre 2 números dados.

La primera línea es N, numero de casos de prueba, las siguientes N líneas son
a y b.

La salida imprime la cantidad de números primos entre a y b incluidos.

Input.
3
2 4
2 5
5 7
Output.
2
3
2

La solución en C++.




Ahora realizamos la prueba de nuestro código, invocando al compilador desde la línea de
comandos.

ACM Chapter Cusco                                                                    Página 5
Para el caso de compilar y ejecutar nuestros programas desde línea de comandos,
debemos agregar al path del sistema, las rutas de estos compiladores, esto se explicará con
más detalle el día del concurso por que es opcional, puedes probar sin problemas desde tu
IDE favorito aunque usarlo desde consola tiene algunas ventajas que les mostraré a
continuación.




Simplemente lo llamamos desde línea de comandos asi.




En C/C++ se genera automáticamente un ejecutable a.exe, entonces luego de compilar lo
ejecutamos.




Ingresamos N = 2, luego la primera línea es a = 4 y b = 5, nos devuelve 1, luego vuelve a leer 2
números a = 3, b = 3 nos devuelve 1 también, ya se hizo 2 iteraciones, entonces nuestro
programa termina con resultado esperado.




ACM Chapter Cusco                                                                       Página 6
A continuación un archivo de prueba *.in que es una forma más cómoda de probar grandes
cantidades de datos, sin necesidad de estar digitando cada vez que queremos probar nuestro
programa, también un archivo *.out este se encontrará en el servidor para la comparación de
resultados.




Entonces es hora de probar con nuestra otra forma en la cual no necesitamos digitar cada vez
que ejecutamos, simplemente lo cargamos así (recordar que primos.cpp y primos.in se
encuentran en el mismo directorio, sino se especifica su ruta):




Enter.




ACM Chapter Cusco                                                                     Página 7
Ahora realizaremos el Envío con nuestra pantalla del Team.

Seleccionamos el archivo con el lenguaje realizado previamente, para compilar el
código en el server / judge.




ACM Chapter Cusco                                                             Página 8
Nos llegará ese mensaje de confirmación, esperando por nuestro resultado, que puede ser varios,
por ejemplo Wrong Answer, Time Limit Exceed, Compilation Error o Accepted.




ACM Chapter Cusco                                                                     Página 9
Una vista del panel del Judge, mientras se realiza el testeo de la validez de nuestro programa.




Antes de recibir respuesta nuestro ScoreBoard se encuentra asi:




ACM Chapter Cusco                                                                      Página 10
Luego en el Judge, luego de compilar e ingresar su propio *.in datos de entrada y luego
comparado con su propio *.out se verá lo siguiente.




Listo para dar el veredicto el juez da en:




Y recibiremos:




ACM Chapter Cusco                                                                    Página 11
Actualizamos nuestro Scoreboard y tenemos:




El mismo algoritmo en C, quedaría de la siguiente forma.




Y la compilación es similar a lo visto con C++ pero en lugar de usar g++, usamos gcc.



ACM Chapter Cusco                                                                   Página 12
Para el caso de C# a diferencia que C/C++ donde no importaban si los datos estaban separados
en varias líneas o incluso si estaban con saltos de línea porque solo buscaban el siguiente token,
debemos tener presente el formato de entrada, ya que en C# solo podemos leer líneas, si estas
líneas tiene varios datos separados por espacios, debemos trozar utilizando algunas funciones
que se muestran a continuación.




La función importante es la de una variable string, en este caso “línea” , invocamos a su método
Split que nos devuelve un arreglo de tokens separados por el char especificado en el parámetro,
en este caso el separador es un espacio.

Asumimos que como siempre tendremos 2 datos en la línea (salvo para N, ver código)
recuperamos los valores del índice “0” y del índice “1”.

Esto lo puedes editar con tu IDE favorito, no necesariamente con un notepad++.




ACM Chapter Cusco                                                                       Página 13
La misma idea Aplica para C# previamente haber agregado al path de la variable del sistema la
ruta del compilador de C#, el “csc” y luego se genera las salidas con el archivo primos.in.

Cabe aclarar que todo esto es opcional, puedes probar con unos cuantos datos manuales desde tu
IDE favorito, pero esta forma con un archivo *.in te permite probar más casos sin necesidad de
escribirlo a cada rato.




El código en Java.




ACM Chapter Cusco                                                                   Página 14
Y en la línea de comandos se procede de manera parecida para realizar la prueba con el archivo
de entrada primos.in.




Y finalmente en Pascal.




ACM Chapter Cusco                                                                   Página 15
Nota: no se usó “uses crt;” debido a que hay problemas con el archivo *.in pero el juez tolera
ese inconveniente.

Nota 2: Se uso longInt debido a que los valores que utilizamos en los casos de prueba son
grandes, se recomienda, si usas pascal usar longInt en lugar de integer.




ACM Chapter Cusco                                                                     Página 16

Más contenido relacionado

La actualidad más candente

La actualidad más candente (18)

C(++) programacion en c y c++
C(++)   programacion en c y c++C(++)   programacion en c y c++
C(++) programacion en c y c++
 
Lenguaje c neo
Lenguaje c neoLenguaje c neo
Lenguaje c neo
 
Lenguaje c 2
Lenguaje c 2Lenguaje c 2
Lenguaje c 2
 
Debug PaulinaChacon
Debug PaulinaChaconDebug PaulinaChacon
Debug PaulinaChacon
 
Curso de programacion en c++ prev
Curso de programacion en c++ prevCurso de programacion en c++ prev
Curso de programacion en c++ prev
 
Dev-C++
Dev-C++ Dev-C++
Dev-C++
 
Manual del dev c++
Manual del dev c++Manual del dev c++
Manual del dev c++
 
Lenguaje c 2_neo
Lenguaje c 2_neoLenguaje c 2_neo
Lenguaje c 2_neo
 
Equipo 6 programacion hibrida
Equipo 6 programacion hibridaEquipo 6 programacion hibrida
Equipo 6 programacion hibrida
 
microprocesadores y microcontroladores
microprocesadores y microcontroladoresmicroprocesadores y microcontroladores
microprocesadores y microcontroladores
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Programación C++ - DEV C++
Programación C++ - DEV C++Programación C++ - DEV C++
Programación C++ - DEV C++
 
C++
C++C++
C++
 
Uso de las clases iostream
Uso de las clases iostreamUso de las clases iostream
Uso de las clases iostream
 
Dev c++
Dev c++Dev c++
Dev c++
 
Tarea intro
Tarea introTarea intro
Tarea intro
 
Introduccion al assembler
Introduccion al assemblerIntroduccion al assembler
Introduccion al assembler
 
RivasAlvarez-OrozcoSalinas.utilerias
RivasAlvarez-OrozcoSalinas.utileriasRivasAlvarez-OrozcoSalinas.utilerias
RivasAlvarez-OrozcoSalinas.utilerias
 

Destacado

Presentación jueces
Presentación juecesPresentación jueces
Presentación jueceskmeneses
 
1er. Concurso de Programación
1er. Concurso de Programación1er. Concurso de Programación
1er. Concurso de Programaciónkmeneses
 
10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer ExperienceYuan Wang
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 

Destacado (8)

Presentación jueces
Presentación juecesPresentación jueces
Presentación jueces
 
1er. Concurso de Programación
1er. Concurso de Programación1er. Concurso de Programación
1er. Concurso de Programación
 
10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience10 Insightful Quotes On Designing A Better Customer Experience
10 Insightful Quotes On Designing A Better Customer Experience
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Similar a Tutorial acerca del uso del sistema de calificacion

Similar a Tutorial acerca del uso del sistema de calificacion (20)

C sharp manual
C sharp manualC sharp manual
C sharp manual
 
C++
C++C++
C++
 
TUTORIAL DE VISUAL C++
TUTORIAL DE VISUAL C++TUTORIAL DE VISUAL C++
TUTORIAL DE VISUAL C++
 
C sharp manual
C sharp manualC sharp manual
C sharp manual
 
C sharp manual
C sharp manualC sharp manual
C sharp manual
 
C sharp manual[1]
C sharp manual[1]C sharp manual[1]
C sharp manual[1]
 
Configuracion Inicial Core
Configuracion Inicial CoreConfiguracion Inicial Core
Configuracion Inicial Core
 
Tutorial assembler
Tutorial assemblerTutorial assembler
Tutorial assembler
 
Programación en c primer programa en c
Programación en c primer programa en cProgramación en c primer programa en c
Programación en c primer programa en c
 
De algoritmo a programa en c++
De algoritmo a programa en c++De algoritmo a programa en c++
De algoritmo a programa en c++
 
Dudas printf()
Dudas printf()Dudas printf()
Dudas printf()
 
Instalacion de Postrgre sql en ubuntu
Instalacion de Postrgre sql en ubuntuInstalacion de Postrgre sql en ubuntu
Instalacion de Postrgre sql en ubuntu
 
Primera_D-Semanaz<xcz<c<zc-Fundamentos_C++.ppt
Primera_D-Semanaz<xcz<c<zc-Fundamentos_C++.pptPrimera_D-Semanaz<xcz<c<zc-Fundamentos_C++.ppt
Primera_D-Semanaz<xcz<c<zc-Fundamentos_C++.ppt
 
Programación c++forcsma
Programación c++forcsmaProgramación c++forcsma
Programación c++forcsma
 
Curso de-mcu-proteus
Curso de-mcu-proteusCurso de-mcu-proteus
Curso de-mcu-proteus
 
53592868 curso-de-mcu-proteus
53592868 curso-de-mcu-proteus53592868 curso-de-mcu-proteus
53592868 curso-de-mcu-proteus
 
Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
151442532 tutorial-de-c
151442532 tutorial-de-c151442532 tutorial-de-c
151442532 tutorial-de-c
 
Crack Distribuido Atabuido
Crack Distribuido AtabuidoCrack Distribuido Atabuido
Crack Distribuido Atabuido
 

Más de acmchaptercusco

Más de acmchaptercusco (6)

Scoreboard - III CusContest
Scoreboard - III CusContestScoreboard - III CusContest
Scoreboard - III CusContest
 
Problemas final
Problemas finalProblemas final
Problemas final
 
2do cuscontestreportes
2do cuscontestreportes2do cuscontestreportes
2do cuscontestreportes
 
Problemas "1er CusContest"
Problemas "1er CusContest"Problemas "1er CusContest"
Problemas "1er CusContest"
 
1er cus contest
1er cus contest1er cus contest
1er cus contest
 
Bases del concurso
Bases del concursoBases del concurso
Bases del concurso
 

Último

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 

Último (19)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 

Tutorial acerca del uso del sistema de calificacion

  • 1. TUTORIAL ACERCA DEL USO DEL SISTEMA DE CALIFICACION Programming Contest Control (PC2) System A continuación explicaré detalladamente el uso del sistema de calificación con un par de ejemplos en los 4 lenguajes disponibles. Previamente debes asignar el IP del servidor para establecer la conexión y así poder realizar los envíos (server=localhost: 50002) cambiar por (server=IPdelServer: 50002), esto se tiene que editar en el archivo pc2v9.ini dentro del directorio bin de pc2. ACM Chapter Cusco Página 1
  • 2. En el desarrollo del concurso, podrás ver el estado del concurso en el scoreboard, para ello hacer doble click en pc2board.bat dentro del directorio bin de pc2, con un usuario y contraseña suministrada por los organizadores, por default es user: scoreboard1 pass: scoreboard1. Ahora si todo salió bien se generará un directorio html dentro de esta carpeta bin seleccionar summary.html y podrás tener el status de los envíos en general actualizado según eventos de envíos de los problemas, aunque se actualiza el archivo html, no se verá estos cambios hasta que refresques el archivo en el navegador, tendrás que actualizarlo cada vez para ver los cambios, si deseas que esto se realice automáticamente sugiero que uses Firefox con un complemento llamado “reloadevery” luego reiniciar el navegador, dar anticlick en la pestaña del summary.html e indicar la frecuencia de actualización de este archivo del scoreboard. ACM Chapter Cusco Página 2
  • 3. Ahora cargamos nuestra ventana principal, la ventana de Team, para esto doble click en pc2team.bat y luego ingresar nuestro nombre de equipo y la contraseña suministrados por los organizadores del concurso. ACM Chapter Cusco Página 3
  • 4. Luego del login tendremos nuestra ventana principal para realizar nuestros envíos de nuestros códigos de solución a los problemas. Como vemos, tenemos la opción de enviar en varios lenguajes de programación. Ahora vamos con el siguiente ejemplo, donde realizaremos la prueba de funcionamiento. Seleccionamos el problema al cual dimos solución y queremos enviarlo para su respectiva verificación por parte de los jueces con los datos de prueba. ACM Chapter Cusco Página 4
  • 5. El problema de los primos, dice en líneas generales así: Determinar la cantidad de números primos entre 2 números dados. La primera línea es N, numero de casos de prueba, las siguientes N líneas son a y b. La salida imprime la cantidad de números primos entre a y b incluidos. Input. 3 2 4 2 5 5 7 Output. 2 3 2 La solución en C++. Ahora realizamos la prueba de nuestro código, invocando al compilador desde la línea de comandos. ACM Chapter Cusco Página 5
  • 6. Para el caso de compilar y ejecutar nuestros programas desde línea de comandos, debemos agregar al path del sistema, las rutas de estos compiladores, esto se explicará con más detalle el día del concurso por que es opcional, puedes probar sin problemas desde tu IDE favorito aunque usarlo desde consola tiene algunas ventajas que les mostraré a continuación. Simplemente lo llamamos desde línea de comandos asi. En C/C++ se genera automáticamente un ejecutable a.exe, entonces luego de compilar lo ejecutamos. Ingresamos N = 2, luego la primera línea es a = 4 y b = 5, nos devuelve 1, luego vuelve a leer 2 números a = 3, b = 3 nos devuelve 1 también, ya se hizo 2 iteraciones, entonces nuestro programa termina con resultado esperado. ACM Chapter Cusco Página 6
  • 7. A continuación un archivo de prueba *.in que es una forma más cómoda de probar grandes cantidades de datos, sin necesidad de estar digitando cada vez que queremos probar nuestro programa, también un archivo *.out este se encontrará en el servidor para la comparación de resultados. Entonces es hora de probar con nuestra otra forma en la cual no necesitamos digitar cada vez que ejecutamos, simplemente lo cargamos así (recordar que primos.cpp y primos.in se encuentran en el mismo directorio, sino se especifica su ruta): Enter. ACM Chapter Cusco Página 7
  • 8. Ahora realizaremos el Envío con nuestra pantalla del Team. Seleccionamos el archivo con el lenguaje realizado previamente, para compilar el código en el server / judge. ACM Chapter Cusco Página 8
  • 9. Nos llegará ese mensaje de confirmación, esperando por nuestro resultado, que puede ser varios, por ejemplo Wrong Answer, Time Limit Exceed, Compilation Error o Accepted. ACM Chapter Cusco Página 9
  • 10. Una vista del panel del Judge, mientras se realiza el testeo de la validez de nuestro programa. Antes de recibir respuesta nuestro ScoreBoard se encuentra asi: ACM Chapter Cusco Página 10
  • 11. Luego en el Judge, luego de compilar e ingresar su propio *.in datos de entrada y luego comparado con su propio *.out se verá lo siguiente. Listo para dar el veredicto el juez da en: Y recibiremos: ACM Chapter Cusco Página 11
  • 12. Actualizamos nuestro Scoreboard y tenemos: El mismo algoritmo en C, quedaría de la siguiente forma. Y la compilación es similar a lo visto con C++ pero en lugar de usar g++, usamos gcc. ACM Chapter Cusco Página 12
  • 13. Para el caso de C# a diferencia que C/C++ donde no importaban si los datos estaban separados en varias líneas o incluso si estaban con saltos de línea porque solo buscaban el siguiente token, debemos tener presente el formato de entrada, ya que en C# solo podemos leer líneas, si estas líneas tiene varios datos separados por espacios, debemos trozar utilizando algunas funciones que se muestran a continuación. La función importante es la de una variable string, en este caso “línea” , invocamos a su método Split que nos devuelve un arreglo de tokens separados por el char especificado en el parámetro, en este caso el separador es un espacio. Asumimos que como siempre tendremos 2 datos en la línea (salvo para N, ver código) recuperamos los valores del índice “0” y del índice “1”. Esto lo puedes editar con tu IDE favorito, no necesariamente con un notepad++. ACM Chapter Cusco Página 13
  • 14. La misma idea Aplica para C# previamente haber agregado al path de la variable del sistema la ruta del compilador de C#, el “csc” y luego se genera las salidas con el archivo primos.in. Cabe aclarar que todo esto es opcional, puedes probar con unos cuantos datos manuales desde tu IDE favorito, pero esta forma con un archivo *.in te permite probar más casos sin necesidad de escribirlo a cada rato. El código en Java. ACM Chapter Cusco Página 14
  • 15. Y en la línea de comandos se procede de manera parecida para realizar la prueba con el archivo de entrada primos.in. Y finalmente en Pascal. ACM Chapter Cusco Página 15
  • 16. Nota: no se usó “uses crt;” debido a que hay problemas con el archivo *.in pero el juez tolera ese inconveniente. Nota 2: Se uso longInt debido a que los valores que utilizamos en los casos de prueba son grandes, se recomienda, si usas pascal usar longInt en lugar de integer. ACM Chapter Cusco Página 16