Problema con la variable de tipo 'cadena'

Problema con la variable de tipo 'cadena'

de Nicolás Harksen Davila -
Número de respuestas: 2

Hola buen día.

Estoy teniendo un problema con la variable 'c' de tipo cadena (definida en el programa principal) ya que no se reinicia después de usarla. Por ejemplo, al ejecutar el subprograma 'buscarCadenaEnLineaDesde', si quiero buscar la cadena 'Titulo' no hay problema, pero al ejecutarlo otra vez para buscar otra palabra, 'Titulo' sigue almacenada en la variable 'c', por lo que el programa no funciona y no encuentro como solucionarlo sin modificar el programa principal.

En respuesta a Nicolás Harksen Davila

Re: Problema con la variable de tipo 'cadena'

de Luis Sierra -
hola nicolás,

no entiendo bien la situación. supongamos que estás ejecutando el
principal, ingresas que vas a trabajar con un texto, pones la opción 4 para buscar
una cadena, ingresas línea, columna y la cadena "Titulo" (en la misma línea que se te pide),
y eso funciona. inmediatamente, pones la opción 4 para buscar
una cadena, ingresas línea, columna y la cadena "otra cosa" (en la misma línea que se te pide),
y eso se comporta como si hubieras ingresado "Titulo". ¿es esa la situación?

si es así, te sugiero que en la primera línea del procedimiento 'buscarCadenaEnLineaDesde'
coloques

with c do
if tope > 0 then writeln ('El primer caracter de la cadena c es', cars[1])
else writeln ('La cadena c es vacia');

si efectivamente el programa principal te manda la misma cadena, entonces debería escribir 'T' (la primera letra de 'Titulo') en ambas ocasiones. ahora, si en la primera ocasión escribe 'T', y en la segunda 'o' (la primera letra de 'otra cosa'), entonces el problema no es lo que te manda el principal.

quizá la salida que obtengas es 'La cadena c es vacia'. en ese caso, supongo que lo que sucede es que no ingresas la cadena y luego ENTER, sino ENTER.

chequea la situación, y regresa a comentar.

saludos

luis