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. Los campos obligatorios están marcados con *