[ Foro de Pascal ]

manejo de texto...

02-May-2013 11:14
Invitado (marcos perez)
1 Respuestas

Hola, cordial saludo .
queria pedir ayuda respecto aun programa que tengo la idea pero que tengo dudas y ojala puedan ayudarme.
quiero en una frase alterar  cada vocal "a" que aparezca en dicha frase añadiendo a continuacion "pa"
ejemplo.
esta es una frase alterada
resultado: estapa es unapa frapase apalterapadapa


yo intento hacer esto:
for i:=1 to length(frase) do
begin
 case fras[i] of
  'a': insert(´pa´,frase[i],i)

pero hasta ahi llego pues no se que mas hacer, pido su ayuda para poder lograrlo, mil gracias por todo lo que puedann aportarme,soy nuevo en esto y espero aprender.


02-May-2013 18:11
Nacho Cabanes (+30)

Lo estás haciendo casi bien. Sólo veo dos problemas serios y alguna tontería de poca importancia:

Poco importante:

1) En el "case" no aparece "frase" sino "fras"

2) Las comillas que rodean a 'pa' no son las correctas.

Algo más serio:

1) En "insert", el segundo dato debe ser una cadena, no una letra: "frase" en vez de "frase[i]".

2) Te interesará usar una cadena auxiliar: si tras "esta" añades "pa", obtendrás "estapa", que tiene una nueva "a", de modo que volverías a añadir y se convertiría en "estapapa" y luego en "estapapapa" y así sucesivamente. Otra alternativa es incrementar el valor de "i" cada vez que insertes.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)