Concurso de programación 2008 Escuela Universitaria de Informática Universidad Politécnica de Madrid Lenguaje C/C++ Compilador de Borland C++Builder 4 Instrucciones básicas 1. Abrir una carpeta para resolver un nuevo problema. 2. Bajar de la página web del concurso el archivo cpeui08 cpp.zip a la carpeta. 3. Descomprimir el archivo cpeui08 cpp.zip dentro en la carpeta. 4. Bajar de la página web del concurso los archivos de entrada y salida del problema a la carpeta. 5. Abrir el proyecto cpeui08 cpp.bpr que tiene el siguiente icono 6. Cerrar la ventana cpeui08 C++ 7. Cerrar la ventana Object Inspector 8. Cerrar la parte izquierda de la ventana ..\Unit1.cpp 9. Expandir la ventana ..\Unit1.cpp 10. Codificar el algoritmo en el cuerpo de la función void fastcall TForm1::AplicarAlgoritmoManual(TObject *Sender) 11. Compilar el proyecto activando el submenú Build cpeui08 cpp del menú Proyect 12. Abrir el archivo ejecutable cpeui08 cpp.exe que tiene el siguiente icono 13. Comprobar la corrección del algoritmo con entrada manual (botón Manual) o desde archivo (botón Archivo). Instrucciones detalladas 1. No modificar la función void fastcall TForm1::AplicarAlgoritmoArchivo(TObject *Sender) 2. Cambiar los valores de las variables ArchivoEntrada y ArchivoSalida en las lı́neas #define ArchivoEntrada “cpeui08 MiProblema.txt” #define ArchivoSalida “cpeui08 Solucion MiProblema.txt” 3. Opción 1. Leer datos del panel Entrada y escribir la solución en el panel Salida: a) Número de lı́neas del panel Entrada: Entrada→Lines→Count b) Lı́nea k−ésima del panel Entrada (0 ≤ k < n, siendo n el número total de lı́neas): Entrada→Lines→Strings[k].c str() c) Borrar el panel Salida: Salida→Clear() d ) Añadir una nueva lı́nea al panel Salida: Salida→Lines→Add(”mi nueva lı́nea”) e) Para depurar el código se pueden escribir resultados parciales en el panel Traza. Las instrucciones para borrar el panel y para escribir lı́neas son las mismas que se han especificadas para el panel Salida. 4. Opción 2. Leer datos de un archivo y escribir la solución en otro archivo: a) Guardar los datos del panel Entrada en el archivo “ArchivoEntradaTemp.txt”: Entrada→Lines→SaveToFile(“ArchivoEntradaTemp.txt”) b) Resolver el problema escribiendo la solución en el archivo “ArchivoSalidaTemp.txt” c) Pasar los datos del archivo “ArchivoSalidaTemp.txt” al panel Salida: Salida→Lines→LoadFromFile(“ArchivoSalidaTemp.txt”) d ) Para depurar el código se pueden escribir resultados parciales en el panel Traza. Las instrucciones para borrar el panel y para escribir lı́neas son las mismas que se han especificadas para el panel Salida en la Opción 1. 5. Cuando en la aplicación activamos el botón Archivo se copia el archivo de entrada en el panel Entrada, se borra el panel Salida, se activa la función AplicarAlgoritmoManual, se compara la solución obtenida (en el panel Salida) con el archivo de salida y se muestra el resultado (CORRECTO ó INCORRECTO) en el panel Salida.