Você está aqui: C++ ::: Dicas & Truques ::: Recursão (Recursividade) |
Como inverter uma string em C++ usando uma função recursivaQuantidade de visualizações: 773 vezes |
|
Nesta dica vamos novamente falar de recursão e recursividade em C++, ou seja, funções que chamam a si mesmas. Dessa vez vamos escrever uma função recursiva que inverte a ordem dos caracteres de uma palavra, frase ou texto. Veja o código C++ completo para o exemplo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
#include <iostream>
using namespace std;
// função recursiva para inverter uma string
void inverter_string(string& str, int n, int i){
// caso base?
if (n <= i){
return;
}
// troca os dois caracteres de lugar
swap(str[i], str[n]);
// e chama a função mais uma vez
inverter_string(str, n - 1, i + 1);
}
// função principal do programa
int main(int argc, char *argv[]){
// vamos criar uma nova string
string frase = "Gosto de programar em C++";
cout << "String original: " << frase << endl;
// agora vamos inverter a string
inverter_string(frase, frase.length() - 1, 0);
// e mostramos o resultado
cout << "String invertida: " << frase << endl;
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: String original: Gosto de programar em C++ String invertida: ++C me ramargorp ed otsoG |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
JavaScript - JavaScript Avançado - Como usar o operador de bits & (E/AND sobre bits) da linguagem JavaScript |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







