Introducción
En este laboratorio, aprenderá paso a paso cómo escribir un programa en C++ que pueda invertir cualquier frase de entrada utilizando recursividad. El programa tomará una frase de entrada del usuario y mostrará la frase invertida.
💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí
En este laboratorio, aprenderá paso a paso cómo escribir un programa en C++ que pueda invertir cualquier frase de entrada utilizando recursividad. El programa tomará una frase de entrada del usuario y mostrará la frase invertida.
En C++, para utilizar los objetos de flujo de entrada/salida estándar como cin
, cout
, necesitamos incluir la biblioteca iostream
. Entonces, agregue el siguiente bloque de código al principio del archivo main.cpp
:
#include <iostream>
using namespace std
En este programa, necesitamos una función para invertir la cadena recursivamente. Agregue el siguiente bloque de código después de la declaración using namespace std;
:
void reverse(const string& a);
main
Como sabemos, la función main
es el punto de entrada de nuestro programa. En la función main
, pediremos al usuario que ingrese una frase y pasaremos esa frase a nuestra función reverse
.
int main() {
string str;
cout << "Please enter a sentence: ";
getline(cin, str);
reverse(str);
return 0;
}
Aquí, estamos pidiendo al usuario que ingrese una frase y luego estamos llamando a nuestra función reverse
y pasando la frase ingresada como argumento.
reverse
Ahora, necesitamos definir la función reverse
que declaramos anteriormente. Usaremos la recursividad para invertir la frase ingresada. Aquí está la implementación de la función:
void reverse(const string& str) {
size_t numOfChars = str.size();
if(numOfChars == 1) {
cout << str << endl;
}
else {
cout << str[numOfChars - 1];
reverse(str.substr(0, numOfChars - 1));
}
}
En esta función, primero calculamos el tamaño de la cadena de entrada usando str.size()
. Si el tamaño de la cadena es 1, entonces es el caso base y simplemente imprimimos la última letra de la frase de entrada. De lo contrario, imprimimos el último carácter y luego llamamos recursivamente a la función reverse
con la cadena excluyendo la última letra.
Hemos terminado de escribir nuestro programa. Ahora, necesitamos compilar y ejecutarlo. Abra una terminal en el directorio ~/proyecto
y use el siguiente comando para compilar el código:
g++ main.cpp -o main
Este comando generará un ejecutable llamado main
. Ahora, use el siguiente comando para ejecutar el programa:
./main
Después de ejecutar el programa con éxito, puede ver la salida como:
Please enter a sentence: Study tonight
thgnot ydutS
En este laboratorio, has aprendido cómo escribir un programa en C++ que puede invertir una frase usando recursividad. Has implementado una función reverse
que utiliza recursividad para invertir la frase ingresada y luego has llamado a esa función en la función main
con la frase de entrada como argumento. Finalmente, has compilado y ejecutado el programa en la terminal para ver la salida.