Universidad de Costa Rica
|
|
La base tecnológica sobre la que está contruida la
red Internet incluye el
HTML, el ancestro del
XML. Usted construirá su programa
"htmljw.exe
"
de forma que tome varios documentos HTML y los analice, letra por
letra, para encontrar en ellos 2 tipos de objetos:
Como palabra use las hileras compuestas por letras, incluyendo las
que aparecen con tildes o acentos en el alfabeto
"Latin 1";
no incluya dentro de la palabra los caracteres especiales, como
signos de puntuación o matemáticos:
(
"+
",
"-
",
"÷
",
":
",
";
"
), etc.
Si lo desea, puede considerar como parte de las palabras
otras letras de lenguas extranjeras, como las lenguas eslavas
o germanas.
En un documento HTML las etiquetas
"<H1>
"
hasta "<H6>
" son colocadas al principio de
sección. Por eso HTML permite hasta 6 niveles de
anidamiento de los encabezados. Su programa debe extraer los
encabezados y grabarlos mostrando ese nivel de anidamiento.
Además, su programa debe permitir mostrar opcionalmente la
cantidad de palabras que están en los párrafos que
siguen a cada encabezado. Al final, después de procesar
cada archivo, su programa siempre mostrará la cantidad de
palabras de todo el documento. Recuerde no contar como palabras
las etiquetas HTML, que son palabras encerradas entre
paréntesis angulares como
"<TABLE>
",
"<P>
",
"<STRONG>
",
"<FONT>
", etc.
Un requerimiento que usted debe respetar al construir su programa es procesar las letras de cada archivo HTML letra por letra. Puede usar estructuras de datos internas y convenientes como, por ejemplo, las que provee la biblioteca STL de C++, pero no puede acumular renglones y renglones en memoria. Su programa debe ser un algoritmo que trabaja en "tiempo real", pues no puede leer de nuevo, una y otra vez, el archivo HTML en proceso. Evite acumular cantidades enormes de letras en memoria; procese lo que necesita y avance a la siguiente letra.
Use el lenguaje de programación que quiera. Eso sí, recuerde que: "¡los programadores de verdad usan C++!".
Luego de imprimir la documentación de su programa, y
entregarla en clase, envíe su trabajo por
correo electrónico. Para esto, haga un archivo empacado
.zip
cuyo nombre sea su número de carnet. Incluya en ese archivo
lo siguiente:
.zip
).*.c
, *.cpp
, *.h
, etc.)..url
que permita abrir la página Internet en que está la documentación completa de su programa.
Las cuentas de computador en la
ECCI se asignan de acuerdo
al número de carnet. Por ejemplo, si su carnet es el
número 95-28-09, para entregar su tarea usted debe crear el
archivo
952809.zip
para enviarlo por
correo electrónico. Si varios alumnos participaron en
la confección de la tareas, sus carnets deben incluirse en
el nombre del archivo .zip
:
952809-952810-952811.zip
.
Luego haga en su cuenta personal un subdirectorio llamado
public_html
, que es bajo el que se instalan todas sus
páginas Internet. Por ejemplo, si su solución
está en el archivo
HTML
llamado
"OLP/t3sol952809.htm
", entonces usted debe instalar esa
página en el archivo
public_html/OLP/t3sol952809.htm
de su cuenta. Luego, para acceder esa página Internet, debe
entrar a este sitio:
http://anubis.ecci.ucr.ac.cr/~e952809/OLP/t3sol952809.htm
[InternetShortcut] URL=http://anubis.ecci.ucr.ac.cr/~e952809/OLP/t3sol952809.htm |
952809.url
Como todas las cuentas de estudiante son la letra "e" seguida del
número de carnet, para el estudiante de carnet "952809" la
cuenta es
"e952809
".
Para indicarle al servidor Internet a cuál cuenta entrar se
usa el caracter "~" (Alt-126), seguido del nombre de
la cuenta:
"~e952809
".
En este caso, el archivo de acceso rápido a su página Internet se llamaría "952809.url
".
Después de la fecha de entrega del programa, puede usted instalar en su cuenta personal su solución (no instale antes su solución en Internet, pues en ese caso sería usted culpable de facilitar la copia de su trabajo, y en consecuencia se haría acreedor a la sanción respectiva).
Por ejemplo, para entregar su tarea programada, el estudiante
952809
crea su archivo 952809.zip
en el que aparece estos archivos:
htmljw.cpp
Biblio.cpp
Tree.h
Biblio.h
952809.doc
952809.htm
952809.dxg
952809.url
htmljw.dsp
htmljw.vcproj
http://www.di-mare.com/adolfo/p/convpas.htm
http://java.sun.com/docs/codeconv/CodeConventions.pdf
|
Tiempo de entrega: | 3 días |
|
|
Segunda etapa: | 7 días | ||
Modalidad: | En parejas |
Adolfo Di Mare <adolfo@di-mare.com>.
|