Comment trouver la fréquence des caractères dans une chaîne en C ++

Comment trouver la fréquence des caractères dans une chaîne en C ++
Dans les chaînes C ++ sont largement utilisées pour gérer les données. Les cordes peuvent stocker un nombre excessif de caractères. Donc, parfois, nous devons rechercher un caractère spécifique à l'intérieur de la chaîne d'entrée. Pour cela, nous devons parcourir manuellement toute la corde, ce qui est le temps de parler et d'impossible pour les grandes cordes. Ainsi, dans cet article, nous couvrirons comment on peut compter la fréquence d'un caractère particulier à l'intérieur d'une chaîne C ++.

Table des matières

  • Qu'est-ce que la fréquence des caractères dans une chaîne en C++
  • Comment trouver la fréquence d'un caractère dans une chaîne en c++
  • Comment trouver la fréquence de tous les caractères dans une chaîne en c++
  • Comment trouver la fréquence d'un caractère dans une chaîne d'entrée utilisateur en C++
  • Conclusion

Quelle est la fréquence des caractères dans une chaîne

La fréquence des caractères est le nombre de fois qu'un certain caractère apparaît dans une chaîne d'entrée. Par exemple, dans la chaîne "Bonjour le monde!" Si nous trouvons la fréquence du caractère 'O', le résultat sera deux.

Comment trouver la fréquence d'un caractère dans une chaîne en c++

Ci-dessous le code donné est un programme C ++ qui trouvera la fréquence du personnage dans une chaîne.

#inclure
#inclure
Utilisation de Namespace Std;
int main()
String str = "Linuxhint.com ";
char ch = 'i';
int count = 0;
pour (int i = 0; i < str.length(); i++)
if (str [i] == ch)
Count ++;

couter << "The frequency of " << ch << " in " << str << " is: " << count;
retour 0;

Ici dans le code ci-dessus, la chaîne «Linuxhint.com » est affecté à la variable Str, Et le personnage 'je' est affecté à la variable ch.

Le programme initialise ensuite le nombre de variables sur 0 et les boucles via chaque caractère dans la chaîne à l'aide d'un pour boucle. Pour chaque personnage, le programme vérifie s'il correspond au personnage ch. S'il y a une correspondance, la variable de comptage est incrémentée de 1.

La dernière partie du programme imprime la fréquence du personnage ch dans la chaîne Str en utilisant le couter déclaration.

Sortir

Dans la sortie, nous pouvons voir la fréquence du caractère je est 2 dans la chaîne définie «Linuxhint.com ». La sortie du programme ci-dessus serait:

Comment trouver la fréquence de tous les caractères dans une chaîne en c++

Voici un programme C ++ qui trouvera la fréquence de tous les caractères à l'intérieur d'une chaîne donnée.

#inclure
#inclure
Utilisation de Namespace Std;
int main()
String str = "Linuxhint.com ";
int count [256] = 0; // en supposant un jeu de caractères ASCII
pour (int i = 0; i < str.length(); i++)
compter [int (str [i])] ++;

pour (int i = 0; i < 256; i++)
if (compter [i]> 0)
couter << "The frequency of " << char(i) << " in " << str << " is: " << count[i] << endl;

retour 0;

Ici, dans l'exemple ci-dessus, nous avons attribué la chaîne «Linuxhint.com » à variable Str. Après ce programme initialise un nombre de tableaux de taille 256, qui est la taille du jeu de caractères ASCII. Chaque élément du tableau représente un caractère ASCII unique, et tous les éléments sont initialement définis sur 0.

Le programme boucle ensuite via chaque caractère de la chaîne à l'aide d'un pour boucle, et incréments l'élément correspondant dans le tableau de comptage pour chaque caractère. De cette façon, le programme compte la fréquence des personnages.

Dans la dernière partie du programme, une boucle passera dans le tableau de comptage et imprimera la fréquence de chaque élément non nul, ainsi que le caractère correspondant et la chaîne d'entrée à l'aide du couter déclaration.

Sortir

Ici dans la sortie, nous pouvons voir la fréquence de tous les caractères à l'intérieur de la chaîne «Linuxhint.com ». La sortie de ce programme serait:

Comment trouver la fréquence d'un caractère dans une chaîne d'entrée utilisateur en C++

Ci-dessous, un programme C ++ Exemple qui trouvera la fréquence des caractères dans une chaîne d'utilisateurs.

#inclure
#inclure
Utilisation de Namespace Std;
int main()
String Str;
Char Ch;
int count = 0;
couter << "Enter a string: ";
Getline (Cin, Str);
couter << "Enter a character to find its frequency: ";
cin >> ch;
pour (int i = 0; i < str.length(); i++)
if (str [i] == ch)
Count ++;

couter << "The frequency of " << ch << " in " << str << " is: " << count;
retour 0;

Le programme ci-dessus initialise une chaîne vide Str, un caractère ch, et un entier compte à 0. Le programme demande ensuite à l'utilisateur de saisir une chaîne en utilisant le couter déclaration. Ensuite le getline () fonction en utilisant cin Lire les entrées de l'utilisateur telles que le texte, les symboles et les espaces.

Le programme demande ensuite à nouveau à l'utilisateur de saisir un caractère pour trouver sa fréquence en utilisant le couter déclaration et cin fonction, qui lit un seul caractère à partir du flux d'entrée standard.

Après ce programme, traversera chaque caractère de la chaîne à l'aide d'une boucle pour une boucle et vérifiez si elle correspond au caractère ch. S'il y a une correspondance, la variable de comptage est incrémentée de 1.

Dans la dernière partie du code, le programme imprimera la fréquence du caractère ch dans la chaîne d'entrée utilisateur à l'aide du couter déclaration.

Sortir

Voici la sortie de la chaîne d'entrée utilisateur «Linuxhint.com ». Ici, nous avons trouvé la fréquence du personnage "je" qui est 2.

Conclusion

Dans cet article, nous avons couvert comment trouver les fréquences de caractère dans les chaînes C ++. Pour trouver la fréquence d'un caractère spécifique à l'intérieur d'une chaîne, nous pouvons utiliser une boucle pour la boucle qui iraera dans toute la chaîne d'entrée et incrémente le nombre pour un caractère spécifique à chaque fois qu'il trouve dans cette chaîne. Pour plus de détails sur la recherche de fréquences de caractères en C ++, lisez l'article.