Como encontrar a frequência de caracteres em uma string em c ++

Como encontrar a frequência de caracteres em uma string em c ++
Nas seqüências de caracteres C ++ são amplamente utilizadas para lidar com dados. Strings podem armazenar um número excedente de caracteres. Então, às vezes precisamos procurar um personagem específico dentro da string de entrada. Para isso, temos que iterar através de toda a corda manualmente, o que é hora de falar e impossível para grandes cordas. Portanto, neste artigo, abordaremos como se pode contar a frequência de um personagem específico dentro de uma string c ++.

Índice

  • O que é frequência de caracteres em uma string em c++
  • Como encontrar a frequência de um personagem em uma string em c++
  • Como encontrar a frequência de todos os personagens em uma string em c++
  • Como encontrar a frequência de um personagem em uma string de entrada do usuário em c++
  • Conclusão

O que é frequência de personagem em uma corda

Frequência do caractere é o número de vezes que um determinado personagem aparece em uma string de entrada. Por exemplo, na string "Olá Mundo!” Se encontrarmos a frequência do personagem 'O', O resultado será dois.

Como encontrar a frequência de um personagem em uma string em c++

Abaixo, o código é um programa C ++ que encontrará a frequência do personagem em uma string.

#incluir
#incluir
usando namespace std;
int main ()
string str = "linuxhint.com ";
char ch = 'i';
int conting = 0;
para (int i = 0; i < str.length(); i++)
if (str [i] == CH)
contagem ++;

cout << "The frequency of " << ch << " in " << str << " is: " << count;
retornar 0;

Aqui no código acima, a string “Linuxhint.com ” é atribuído à variável str, e o personagem 'eu' é atribuído à variável CH.

O programa inicializa a variável contam para 0 e loop através de cada caractere na string usando um para loop. Para cada personagem, o programa verifica se corresponde ao personagem CH. Se houver uma correspondência, a variável de contagem é incrementada por 1.

A última parte do programa imprime a frequência do personagem CH na string str usando o cout declaração.

Saída

Na saída, podemos ver a frequência do caráter eu é 2 na corda definida “Linuxhint.com ”. A saída do programa acima seria:

Como encontrar a frequência de todos os personagens em uma string em c++

A seguir, é apresentado um programa C ++ que encontrará a frequência de todos os personagens dentro de uma determinada string.

#incluir
#incluir
usando namespace std;
int main ()
string str = "linuxhint.com ";
int contagem [256] = 0; // assumindo o conjunto de caracteres ASCII
para (int i = 0; i < str.length(); i++)
Conte [int (str [i])] ++;

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

retornar 0;

Aqui no exemplo acima, atribuímos a string “Linuxhint.com ” para variável str. Depois desse programa, inicializa uma contagem de matrizes de tamanho 256, qual é o tamanho do conjunto de caracteres ASCII. Cada elemento na matriz representa um caractere ASCII exclusivo, e todos os elementos são inicialmente definidos como 0.

O programa então atravessa cada caractere na string usando um para loop, e incrementos o elemento correspondente na matriz de contagem para cada caractere. Dessa forma, o programa conta a frequência dos personagens.

Na última parte do programa, um loop percorre a matriz de contagem e imprimirá a frequência de cada elemento diferente de zero, juntamente com o caractere correspondente e a sequência de entrada usando o cout declaração.

Saída

Aqui na saída, podemos ver a frequência de todos os caracteres dentro da string “Linuxhint.com ”. A saída deste programa seria:

Como encontrar a frequência de um personagem em uma string de entrada do usuário em c++

Abaixo dado está um programa de exemplo C ++ que encontrará a frequência do personagem em uma string de usuário.

#incluir
#incluir
usando namespace std;
int main ()
string str;
char ch;
int conting = 0;
cout << "Enter a string: ";
getline (cin, str);
cout << "Enter a character to find its frequency: ";
Cin >> ch;
para (int i = 0; i < str.length(); i++)
if (str [i] == CH)
contagem ++;

cout << "The frequency of " << ch << " in " << str << " is: " << count;
retornar 0;

O programa acima inicializa uma sequência vazia str, um personagem CH, e uma contagem inteira para 0. O programa então pede ao usuário que insira uma string usando o cout declaração. Em seguida Obter linha() função usando CIN lerá a entrada do usuário, como texto, símbolos e espaços.

O programa então solicita novamente ao usuário que insira um personagem para encontrar sua frequência usando o cout declaração e CIN função, que lê um único caractere do fluxo de entrada padrão.

Depois desse programa, percorrer cada caractere na string usando um loop e verifique se ele corresponde ao caractere CH. Se houver uma correspondência, a variável de contagem é incrementada por 1.

Na parte final do código, o programa imprimirá a frequência do personagem CH na sequência de entrada do usuário usando o cout declaração.

Saída

A seguir, a saída para a sequência de entrada do usuário “Linuxhint.com ”. Aqui encontramos a frequência para o personagem "eu" que é 2.

Conclusão

Neste artigo, abordamos como encontrar frequências de caracteres em strings C ++. Para encontrar a frequência de um caractere específico dentro de uma string, podemos usar um loop para itera por toda a string de entrada e incrementar a contagem de um personagem específico toda vez que encontrar nessa string. Para mais detalhes sobre a localização de frequências de caracteres em C ++, leia o artigo.