Introdução
Neste laboratório, você aprenderá passo a passo como escrever um programa C++ que pode inverter qualquer frase de entrada usando recursão. O programa receberá uma frase de entrada do usuário e exibirá a frase invertida.
Incluir as Bibliotecas Necessárias
Em C++, para usar os objetos de fluxo de entrada/saída padrão como cin, cout, precisamos incluir a biblioteca iostream. Portanto, adicione o seguinte bloco de código no início do arquivo main.cpp:
#include <iostream>
using namespace std
Declarar uma Função de Inversão
Neste programa, precisamos de uma função para inverter a string recursivamente. Adicione o seguinte bloco de código após a declaração using namespace std;:
void reverse(const string& a);
Definir a Função Principal (main)
Como sabemos, a função main é o ponto de entrada do nosso programa. Na função main, pediremos ao usuário para inserir uma frase e passaremos essa frase para a nossa função reverse.
int main() {
string str;
cout << "Please enter a sentence: ";
getline(cin, str);
reverse(str);
return 0;
}
Aqui, estamos pedindo ao usuário para inserir uma frase e, em seguida, estamos chamando nossa função reverse e passando a frase inserida como um argumento.
Definir a Função de Inversão
Agora, precisamos definir a função reverse que declaramos anteriormente. Usaremos recursão para inverter a frase inserida. Aqui está a implementação da função:
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));
}
}
Nesta função, primeiro calculamos o tamanho da string de entrada usando str.size(). Se o tamanho da string for 1, então é o caso base, e simplesmente imprimimos a última letra da frase de entrada. Caso contrário, imprimimos o último caractere e, em seguida, chamamos recursivamente a função reverse com a string excluindo a última letra.
Compilar e Executar
Terminamos de escrever nosso programa. Agora, precisamos compilar e executá-lo. Abra um terminal no diretório ~/project e use o seguinte comando para compilar o código:
g++ main.cpp -o main
Este comando gerará um executável chamado main. Agora, use o seguinte comando para executar o programa:
./main
Após executar o programa com sucesso, você pode ver a saída como:
Please enter a sentence: Study tonight
thgnot ydutS
Resumo
Neste laboratório, você aprendeu como escrever um programa C++ que pode inverter uma frase usando recursão. Você implementou uma função reverse que usa recursão para inverter a frase inserida e, em seguida, chamou essa função na função main com a frase de entrada como um argumento. Finalmente, você compilou e executou o programa no terminal para ver a saída.



