Pascal/Turbo Pascal - Ayudaaa!!

   
Vista:

Ayudaaa!!

Publicado por Martin Pasin (1 intervención) el 07/10/2009 07:22:47
3.  Contador de Palabras
En este laboratorio se debe implementar un programa que permita calcular la cantidad de palabras de un texto que cumplen con ciertas condiciones. Las condiciones son ingresadas antes de ingresar el texto.
3.1  Descripción
Se desea escribir un programa que lea un texto y que despliegue la cantidad de palabras que contiene el texto que cumplen con una condición.
La condición es especificada por el usuario y puede estar compuesta por una combinación de las siguientes condiciones:
La palabra termina con una letra dada.
La palabra comienza con una letra dada.
La palabra tiene una cantidad de caracteres dada.
La palabra contiene una letra dada.
El usuario puede especificar si las palabras a considerar deben cumplir con alguna o con todas las condiciones especificadas.
Más adelante se describen los detalles de las condiciones y el texto.
3.2  Datos de entrada
Los datos son leídos desde la entrada estándar. Están consituidos por dos partes:
Especificación de las condiciones que deben cumplir las palabras que deben ser consideradas en el conteo.
El texto a ser analizado.
3.3  Especificación de las condiciones
Las condiciones se especifican codificadas como una secuencia de líneas consecutivas, cada línea contiene una condición simple. El usuario puede ingresar o no todas las condiciones, pero al menos especificará una de ellas. En caso de ingresar más de una condición del mismo tipo, sólo se tomará en cuenta la última ingresada.
Para terminar la entrada de condiciones, se ingresará una marca especial que lo indique.
A continuación se especifica la codificación de cada una de las condiciones:
Terminación de palabra

Para indicar la condición de que las palabras a contar terminen con una letra dada se incluye una línea de la forma
Fx
donde x es la letra con la cuál la palabra debe terminar.
Comienzo de palabra

Para indicar la condición de que las palabras a contar comiencen con una letra dada se incluye una línea de la forma:
Cx
donde x es la letra con la cuál la palabra debe comenzar.
Letra contenida en palabra

Para indicar la condición de que las palabras a contar contengan una letra dada se incluye una línea de la forma:
Ex
donde x es la letra que la palabra debe contener. La letra x puede estar en cualquier parte de la palabra, incluso al principio o al final. También puede aparecer más de una vez.
Largo de palabra

Para indicar la condición de que las palabras a contar tengan un largo determinado se incluye una línea de la forma:
Ln
donde n es un número positivo que indica la cantidad de caracteres que debe contener la palabra.
Todas o Algunas de las condiciones

Para indicar que las palabras a contar deben cumplir con todas las condiciones especificadas se incluye una línea como la siguiente:
A
En caso de no aparecer una línea como la anterior se cuentan las palabras que cumplen con al menos una de las condiciones que se especificaron.
Fin de parte de condiciones

Luego de las condiciones, para indicar el fin de esta parte de la entrada, se ingresa una línea como la siguiente:
Q
3.4  El texto a ser analizado
Seguidamente de la marca de fin de condiciones (Q) se ingresa el texto que debe ser analizado en función de las condiciones especificadas. El mismo consta de una cantidad no pre-establecida de palabras separadas por al menos un espacio en blanco. Para marcar el fin del texto se ingresa al menos un espacio y un punto. Se hace notar que todo el texto viene dado en una sola línea (no se ingresan saltos de línea).
Asuma que las entradas vienen sin errores. Por lo que no es necesario verificar la buena formación ni de las condiciones ni del texto. Ante cualquier duda lea atentamente las sesiones de ejecución y utilice el “programa modelo”.
3.5  La Salida
Se debe desplegar en la salida estándar el siguiente mensaje:
La cantidad de palabras que cumplen con la condicion es: n
donde n es el valor que se computó al analizar el texto.
4.  Se pide
Escribir un programa Pascal que realice lo que se describe más arriba.
Se debe utilizar el lenguaje Pascal tal como fue dado en el curso (ver FreePascal Y Pascal Estándar)
El programa entregado debe seguir el comportamiento que se presenta en esta letra. El formato de la entrada y la salida debe ser EXACTAMENTE IGUAL. De lo contrario la corrección automática de la tarea fallará.
Por ejemplo, se considera que es una solución incorrecta si imprime mensajes del tipo:
Bienvenido al progrograma para contar palabaras”,
Por favor ingrese las condiciones: ,
“Chau.”
o cualquier variante que no respete lo que se establece en la letra.
Tampoco debe ponerse un read o readln al final para pausar el programa.
Se puede utilizar todo lo visto en las clases teóricas y prácticas. Para realizar la tarea alcanza con lo visto en teórico hasta la clase 4 inclusive. Esto incluye los siguientes conceptos:
Tipos de datos:
Integer
Boolean
Char
Instrucciones:
Asignación
Entrada y Salida(read, write, WriteLn, ReadLn)
Secuencia
Selección (if, case)
Repetición (for, while, repeat)
En esta parte no se deben utilizar subprogramas (procedimientos y funciones)
Para la corrección de las tareas, se compilarán con la versión 2.2.2 para windows. La compilación y la ejecución se realizarán en línea de comandos. El comando de compilación se invocará de la siguiente manera:
fpc -Co -Cr programa.pas
Si trabaja con el IDE, asegúrese de configurarlo para que compile de la misma manera que el comando anterior (habilitación de range checking e Integer Overflow Checking)
No está permitido utilizar facilidades de Free Pascal que no forman parte del estándar y no se dan en el curso. Así por ejemplo, no se pueden utilizar ninguna de las palabras siguientes: uses, crlscr, gotoxy, crt, readkey, longint, string, break, etcétera.
En esta tarea como en todos los problemas de este curso, se valorará además de la lógica correcta, la utilización de un buen estilo de programación de acuerdo a los criterios impartidos en el curso. De esta manera, se hará énfasis en buenas prácticas de programación que lleven a un código legible, bien documentado y mantenible, tales como:
indentación adecuada
utilización correcta y apropiada de las estructuras de control
código claro y legible
algoritmos razonablemente eficientes
utilización de comentarios que documenten y complementen el código
utilización de constantes simbólicas
nombres mnemotécnicos para variables, constantes, etcétera.
5.  Ejemplos de sesión
Cp
L14
Ee
A
Q
este es un texto de prueba para mostrar el funcionamiento termina con punto .
La cantidad de palabras que cumplen con la condicion es: 0
Cp
L14
Ee
Q
este es un texto de prueba para mostrar el funcionamiento termina con punto .
La cantidad de palabras que cumplen con la condicion es: 10
Cc
L14
Ee
Q
este es un texto de prueba para mostrar el funcionamiento termina con punto .
La cantidad de palabras que cumplen con la condicion es: 9
Ct
L7
Ee
Q
este es un texto de prueba para mostrar el funcionamiento termina con punto .
La cantidad de palabras que cumplen con la condicion es: 9
Ct
L7
Ee
A
Q
este es un texto de prueba para mostrar el funcionamiento termina con punto .
La cantidad de palabras que cumplen con la condicion es: 1
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayudaaa!!

Publicado por Diego Romero (997 intervenciones) el 07/10/2009 13:25:59
Me siento como de regreso en la secundaria ;)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar