Les mots inversés dans une chaîne en utilisant C ++

Les mots inversés dans une chaîne en utilisant C ++
Une variable de chaîne se compose d'une collection de caractères entourés de doubles citations. Cet article C ++ expliquera comment inverser les mots dans une chaîne en utilisant toutes les fonctions intégrées et autres.

Inverser ou retourner entièrement une chaîne en C ++ implique de modifier la séquence des caractères dans la chaîne pour apparaître en arrière. Selon les besoins du programme que vous implémentez, nous pouvons utiliser une variété d'implémentations pour inverser une chaîne.

Exemple 1: Utilisation de la fonction d'inversion intégrée pour inverser les mots dans une chaîne en C++

C ++ comprend une fonction inverse pour inverser les chaînes. L'itérateur de démarrage de la chaîne et l'itérateur de fin de chaîne sont les deux seuls paramètres acceptés par cette fonction. La ligne de code suivante montre l'utilisation de cette fonction.

Initialement, nous avons inclus le fichier d'en-tête dans le code. Le fichier iOStream et le fichier stdc. Ce fichier stdc fera la fonction de chaîne inverse ici. Le fichier d'espace de noms std est également fourni, permettant l'utilisation de ses classes et fonctions dans le code.

Ensuite, nous avons la fonction principale du programme, et dans le corps de fonction principale, nous avons une déclaration variable de chaîne comme «strvalue». En même temps, nous l'avons initialisé avec le mot. La chaîne de sortie sera affichée via la commande C ++ COT. Après cela, nous utilisons une fonction nommée «Reverse». La fonction «inverse» apprend deux paramètres. Le premier paramètre est le début (), et le deuxième paramètre est l'itérateur fin () qui itère sur la chaîne de mots spécifiée. La fonction début () renvoie un itérateur se référant à l'élément initial du conteneur.

D'un autre côté, l'itérateur END () Renvoie un itérateur faisant référence au dernier élément du conteneur. Le mot de chaîne inversé sera imprimé après la fonction de revers.

#inclure
#inclure
Utilisation de Namespace Std;
int main()
String strvalue = "Excellent";
couter<<"String:"<inverser (strvalue.begin (), strvalue.fin());
couter<<"Reverse String:"<

Les résultats de la chaîne, ainsi que la chaîne inversée, sont affichés dans l'image suivante:

Exemple 2: Utilisation de la boucle pour inverser les mots dans une chaîne en c++

Une boucle est utile pour inverser une chaîne. Pour modifier les emplacements des éléments, nous utiliserons la fonction d'échange, qui est une méthode intégrée de C++. Discutons de l'extrait de code suivant pour inverser une chaîne.

Nous avons ajouté les fichiers d'en-tête dans le code. Dans l'étape suivante, nous avons invoqué la fonction principale, dans laquelle nous implémentons le code pour inverser une chaîne. Tout d'abord, nous avons défini une variable de chaîne «MyString». La variable de chaîne «MyString» contient un mot de chaîne «kalsoom», sur lequel nous devons appliquer la méthode inverse. Nous avons affiché la chaîne avec l'instruction COUT. Ensuite, nous avons déclaré une variable int «strlen», qui a appelé la fonction de longueur pour la chaîne donnée. Nous avons également déclaré une autre variable INT «S» pour garder le «strlen-1». La procédure «strlen-1» a besoin de la longueur de la chaîne jusqu'au personnage à la dernière position.

Ensuite, nous avons un algorithme de swap où la «température» est utilisée pour stocker les éléments du «char» à l'indice «i» afin que nous puissions l'échanger avec les éléments de char à l'indice «S» plus tard. La chaîne inversée de ce programme est ensuite affichée. Après cela, nous avons une condition pour la boucle qui inversera le mot de la chaîne spécifiée.

#inclure
Utilisation de Namespace Std;
int main()
String myString = "kalSoom";
couter<<"Original String: "<int strlen = mystring.longueur();
int s = strlen-1;
pour (int i = 0; i<(strlen/2);i++)
char temp = mystring [i];
MyString [i] = myString [s];
MyString [s] = temp;
S = S-1;

couter<<"Reversed String: "<

Vous pouvez voir la chaîne d'origine «Kalsoom» et l'inverse de la chaîne donnée sur l'invite Ubuntu.

Exemple 3: Utilisation d'une fonction pour inverser les mots dans une chaîne en c++

La récursivité est également utilisée pour faire une fonction de chaîne inversée. L'illustration de code suivante montre comment nous pouvons inverser la chaîne via la fonction.

Dans la première étape, nous avons une fonction appelée «Revstr», et le constructeur est également généré pour cette fonction. Le constructeur prend la référence de la chaîne, la variable entière «i», et l'autre variable entière «J». Dans la fonction «Revstr», nous avons la condition IF et la fonction de swap, qui échange l'index «i» avec l'index «J». La fonction «RevStr» est appelée pour que le mot suivant de la chaîne s'inverse.

En fin de compte, la fonction principale a la commande cout utilisée pour imprimer la chaîne avant la méthode inverse et après la méthode inverse.

#inclure
Utilisation de Namespace Std;
void revstr (string & str, int i, int j)
si je<=j)return;
swap (str [i], str [j]);
Revstr (str, i-1, j + 1);

int main()
String mystr = "Linux";
couter<<"String: "<Revstr (Mystr, Mystr.le long () - 1,0);
couter<<"Reversed String: "<

La capture d'écran suivante montre la sortie de la chaîne avant et après avoir appliqué la fonction:

Exemple 4: Création d'une nouvelle chaîne pour inverser les mots dans une chaîne en C++

En boucle vers l'arrière sur une chaîne et garder le contenu dans une nouvelle chaîne de la même taille est une approche de rond-point pour l'inverser. La méthode push-back () peut ajouter des caractères à une chaîne vide.

Dans la fonction principale du programme suivant, nous avons déclaré une variable de chaîne «Stringone» et stocké un mot de chaîne. Ensuite, nous avons déclaré une autre variable, «new_string». La boucle FOR est utilisée pour la variable de chaîne «StringOne», qui itère sur le dernier caractère dans la chaîne et renvoie la chaîne dans l'ordre inverse. Ensuite, avec la méthode push_back (), nous avons ajouté la valeur de chaîne renvoyée de la boucle pour le new_string. En fin de compte, la chaîne et la chaîne inversée seront imprimées.

#inclure
Utilisation de Namespace Std;
int main()
String StringOne = "Programmation";
String new_string;
pour (int s = stringone.longueur () - 1; S> = 0; s -)
new_string.push_back (stringone [s]);

couter<<"String: "<couter<<"Reversed string: "<

Les résultats suivants sont montrés que la chaîne est inversée lors de l'exécution du programme précédent:

Conclusion

Ici, nous avons inversé la chaîne de mots en explorant les moyens possibles d'inverser la chaîne en c++. Nous avons inversé la chaîne avec la fonction intégrée C ++, la méthode et la fonction de boucle, et la création d'une nouvelle chaîne. Tous les résultats obtenus à partir de ces méthodes de remise des méthodes de chaîne ont prouvé des résultats en utilisant le compilateur C ++ dans Ubuntu 20.04.