Como invertir una cadena en Pseint

Hola a todos, hoy os voy a explicar como podemos invertir una cadena en PseInt.

A veces, puede ser que necesitemos invertir una cadena en PseInt para nuestro proceso.

Lo primero que haremos es pedir una cadena y definir algunas variables como la cadena donde almacenaremos la cadena que este invertida.

Recomiendo inicializar la cadenaInvertida.


Proceso testInvertirCadena
	
	definir cadenaOriginal, cadenaInvertida como cadena;
	definir i como entero;
	cadenaInvertida <- "";
	
	Escribir "Escribe una palabra";
	leer cadenaOriginal;
	
FinProceso


Pseint nos proporciona algunas funciones que podemos reutilizar, como concatenar y subcadena.

La idea es que con subcadena podemos obtener una letra en concreto, iremos recorriendo de atrás hacia delante y con concatenar iremos uniendo esas letras en una sola cadena.

Proceso testInvertirCadena
	
	definir cadenaOriginal, cadenaInvertida como cadena;
	definir i como entero;
	cadenaInvertida <- "";
	
	Escribir "Escribe una palabra";
	leer cadenaOriginal;
	
	Para i<-longitud(cadenaOriginal)-1 Hasta 0 Con Paso -1 Hacer
		cadenaInvertida <- Concatenar(cadenaInvertida, subcadena(cadenaOriginal, i, i));
	FinPara
	
	Escribir "La cadena invertida es: ", cadenaInvertida;
	
FinProceso

Este es el resultado:

También lo podemos hacer en subproceso:


Proceso testInvertirCadena
	
	definir cadenaOriginal, cadenaInvertida como cadena;
	definir i como entero;
	cadenaInvertida <- "";
	
	Escribir "Escribe una palabra";
	leer cadenaOriginal;
	
	cadenaInvertida <- invertirCadena(cadenaOriginal);

	Escribir "La cadena invertida es: ", cadenaInvertida;
	
FinProceso

SubProceso cadenaInvertida <- invertirCadena ( cadenaOriginal )
	
	definir cadenaInvertida como cadena;
	definir i como entero;
	cadenaInvertida <- "";
	
	Para i<-longitud(cadenaOriginal)-1 Hasta 0 Con Paso -1 Hacer
		cadenaInvertida <- Concatenar(cadenaInvertida, subcadena(cadenaOriginal, i, i));
	FinPara
FinSubProceso


Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada.