Práctica de PRO2 - Primavera 2019 - Entrega intermedia X91467


Statement
 

pdf   zip   tar

html

Este problema corresponde a la entrega intermedia de la práctica. Tened en cuenta que:

  • Esta no es la entrega definitiva de la práctica completa, ni siquiera es una entrega provisional de la práctica completa
  • En esta entrega se ha de proporcionar todo el código necesario (clases, programa principal y Makefile) para poder usar las tres últimas funcionalidades de la práctica (consulta de la tabla de frecuencias, del treecode y de los códigos de un idioma), así como la lectura de la colección inicial de idiomas
  • En esta entrega no pedimos carpetas generadas mediante doxygen, pero los ficheros de la clases pueden llevar todos los comentarios doxygen que queráis; de hecho recomendamos que incluyáis las especificaciones de todas las operaciones y que sean lo más definitivas posible
  • Esta entrega no tendrá nota manual

Entrada

Una secuencia de instrucciones y datos que siguen el formato del enunciado de la práctica y del juego de pruebas público.

Salida

Una secuencia de resultados que siguen el formato del enunciado de la práctica y del juego de pruebas público.

Observación

El Jutge prueba vuestras entregas mediante 4 juegos de pruebas:

  • sample: el juego de pruebas público
  • privat1: juego de pruebas muy similar al público
  • privat2: juego de pruebas que hace énfasis en los desempates, en los caracteres no alfanuméricos y en las letras acentuadas
  • privat3: juego de pruebas que hace énfasis en la eficiencia

En un fichero llamado practica.tar tenéis que entregar

  • Los ficheros .hh y .cc de las clases y el programa principal
  • El fichero Makefile, que usaremos para generar y probar el ejecutable

Tened en cuenta las siguientes restricciones:

  • El fichero que contiene el programa principal se ha de llamar program.cc
  • El Makefile ha de generar un ejecutable llamado program.exe
  • Es importante que uséis las opciones de compilación del Jutge de PRO2 (ved Documentation → Compilers → PRO2 a www.jutge.org)
  • No usar la opción -D_GLIBCXX_DEBUG o usarla de forma incorrecta podrá ser penalizado

Producid el fichero practica.tar con la instrucción Linux

tar -cvf practica.tar fitxer1 fitxer2 fitxer3 ...

desde el directorio/carpeta donde tengáis los ficheros que vais a entregar. Incluid esta instrucción en vuestro Makefile, de forma que el .tar se pueda generar ejecutando make practica.tar. Con eso reduciréis el riesgo de error en sucesivas entregas. El Jutge no acepta .tar donde los ficheros estén dentro de carpetas. Recomendamos usar GNU tar para reducir el riesgo de que el fichero practica.tar sea incompatible con el Jutge. No es necesario incluir BinTree.hh en practica.tar.

Public test cases
  • Input

    2
    
    idioma_mini
    3
    a 4
    b 7
    _ 5
    
    idioma_medio
    8
    e 9
    f 3
    g 8
    _ 6
    Ç 1
    Ñ 2
    a 4
    i 6
    
    tabla_frec idioma_mini
    
    tabla_frec idioma_medio
    
    treecode idioma_mini
    
    treecode idioma_medio
    
    codigos idioma_mini todos
    
    codigos idioma_mini b
    
    codigos idioma_medio Ñ
    
    codigos idioma_medio todos
    
    tabla_frec idioma_mini
    
    treecode idioma_mini
    
    codigos idioma_mini A
    
    codigos idioma_mini todos
    
    tabla_frec idioma_maxi
    
    
    treecode idioma_maxi
    
    codigos idioma_maxi todos
    
    codigos idioma_maxi 1
    
    
    
    fin
    

    Output

    Tabla de frecuencias de idioma_mini:
    _ 5
    a 4
    b 7
    
    Tabla de frecuencias de idioma_medio:
    _ 6
    a 4
    e 9
    f 3
    g 8
    i 6
    Ç 1
    Ñ 2
    
    Treecode de idioma_mini:
    recorrido en preorden:
    _ab 16
    b 7
    _a 9
    a 4
    _ 5
    recorrido en inorden:
    b 7
    _ab 16
    a 4
    _a 9
    _ 5
    
    Treecode de idioma_medio:
    recorrido en preorden:
    _afÇÑieg 39
    eg 17
    g 8
    e 9
    _afÇÑi 22
    _a 10
    a 4
    _ 6
    fÇÑi 12
    fÇÑ 6
    f 3
    ÇÑ 3
    Ç 1
    Ñ 2
    i 6
    recorrido en inorden:
    g 8
    eg 17
    e 9
    _afÇÑieg 39
    a 4
    _a 10
    _ 6
    _afÇÑi 22
    f 3
    fÇÑ 6
    Ç 1
    ÇÑ 3
    Ñ 2
    fÇÑi 12
    i 6
    
    Codigos de idioma_mini:
    _ 11
    a 10
    b 0
    
    Codigo de b en idioma_mini:
    b 0
    
    Codigo de Ñ en idioma_medio:
    Ñ 11011
    
    Codigos de idioma_medio:
    _ 101
    a 100
    e 01
    f 1100
    g 00
    i 111
    Ç 11010
    Ñ 11011
    
    Tabla de frecuencias de idioma_mini:
    _ 5
    a 4
    b 7
    
    Treecode de idioma_mini:
    recorrido en preorden:
    _ab 16
    b 7
    _a 9
    a 4
    _ 5
    recorrido en inorden:
    b 7
    _ab 16
    a 4
    _a 9
    _ 5
    
    Codigo de A en idioma_mini:
    El idioma no existe o el caracter no esta en el idioma
    
    Codigos de idioma_mini:
    _ 11
    a 10
    b 0
    
    Tabla de frecuencias de idioma_maxi:
    El idioma no existe
    
    Treecode de idioma_maxi:
    El idioma no existe
    
    Codigos de idioma_maxi:
    El idioma no existe
    
    Codigo de 1 en idioma_maxi:
    El idioma no existe o el caracter no esta en el idioma
    
    
  • Information
    Author
    PR02
    Language
    Spanish
    Official solutions
    Make
    User solutions
    Make