Maison > développement back-end > C++ > Vérifiez si une chaîne contient des lettres consécutives et si chaque lettre n'apparaît qu'une seule fois

Vérifiez si une chaîne contient des lettres consécutives et si chaque lettre n'apparaît qu'une seule fois

WBOY
Libérer: 2023-09-08 13:57:03
avant
1175 Les gens l'ont consulté

Vérifiez si une chaîne contient des lettres consécutives et si chaque lettre napparaît quune seule fois

Présentation

En C++, une chaîne est une séquence de caractères qui peuvent être différents ou répétés. Les caractères consécutifs sont des caractères qui apparaissent en même temps et la différence entre eux est de 1. Par exemple, les caractères a et b sont consécutifs car ils apparaissent ensemble. Cependant, les caractères m et o ont une différence de 2 dans leurs positions, ce qui les rend non consécutifs.

Dans cet article, nous allons développer un code qui prendra une chaîne en entrée et affichera vrai lorsque tous les caractères de la chaîne sont consécutifs. Voyons l'exemple ci-dessous pour mieux comprendre ce sujet

Exemple d'exemple

Exemple 1 - str - "pqsr"

Sortie - Oui

Dans cet article, nous allons développer un code pour extraire le caractère actuel et le caractère précédent de la chaîne. Il est ensuite vérifié si les caractères diffèrent par une position non équivalente à 1, puis la valeur booléenne fausse est renvoyée.

Syntaxe

La traduction de

sort()

est :

sort()

sort(str.begin(), str.end())
Copier après la connexion

La méthode sort() en C++ est utilisée pour organiser les caractères d'une chaîne par ordre croissant du début à la fin.

Paramètres

str - La chaîne d'entrée

end - le dernier caractère apparaissant dans la chaîne

begin-le premier caractère apparaissant dans la chaîne

length()

se traduit par :

length()

La méthode length() en C++ est utilisée pour calculer le nombre de caractères dans la chaîne.

str.length()
Copier après la connexion

Paramètres

str - La chaîne d'entrée

Algorithme

  • Accepte une chaîne d'entrée, str comme entrée.

  • La chaîne d'entrée est triée à l'aide de la méthode sort()

  • .
  • Une itération de la chaîne est effectuée, en utilisant la boucle for i.

  • La longueur de la chaîne est calculée à l'aide de la méthode length() et stockée dans la variable len.

  • Effectuez une itération de boucle for sur la chaîne, i est l'itération effectuée.

  • Extrayez les caractères aux positions ième, ch et i-1ème, ch1 à chaque fois.

  • Si la différence entre ces deux caractères n'est pas égale à 1, alors une valeur booléenne fausse est renvoyée

  • Si tous les caractères correspondants satisfont à la condition requise, alors la valeur booléenne - true est renvoyée.

  • Cette valeur est renvoyée sous forme d'indicateur booléen et est stockée dans la variable res. Si sa valeur est vraie, une chaîne contenant des caractères consécutifs est imprimée.

Exemple

L'extrait de code C++ suivant est utilisé pour saisir un exemple de chaîne et calculer si tous les caractères apparaissant dans la chaîne sont consécutifs.

//including the required libraries 
#include <bits/stdc++.h>
using namespace std;
 
//function to check of characters consecutive
bool validateString(string str) {
 
   //length of the string
   int len = str.length();
 
   // sorting the given string
   sort(str.begin(), str.end());
 
   // Iterate for every index and
   // check for the condition
   for (int i = 1; i < len; i++) {
 
      //extract characters at the required pos 
      char ch = str[i];
      char ch1 = str[i-1];
      if (ch-ch1 != 1)
      //in case characters are not consecutive
         return false;
   }
   //if condition holds
    return true;
}
 
//calling the main method
int main() {
 
   // 1st example
   string str = "mpon";
   cout << "Input String : " <<str << " \n";
   bool res = validateString(str);
   if (res)
       cout << "Yes, the string contains only consecutive characters\n";
   else
       cout << "No, the string doesn't contain only consecutive characters.\n";
   return 0;
}
Copier après la connexion

Sortie

Input String − mpon 
Yes, the string contains only consecutive characters
Copier après la connexion

Conclusion

Les caractères qui continuent d'apparaître dans une chaîne sont des lettres qui apparaissent en même temps. Ceci peut être réalisé en triant la chaîne du début à la fin. Les personnages occupant des positions consécutives peuvent être facilement comparés et vérifiés combien de positions diffèrent entre eux. Cela peut être utilisé pour capturer des informations indiquant si une chaîne est continue.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal