Menu
Coddy logo textTech

Recapitulação - Frequência de Palavras

Parte da seção Lógica & Fluxo do Journey de C++ da Coddy — lição 29 de 56.

challenge icon

Desafio

Fácil

Crie um programa que conte a frequência de palavras em um trecho de texto usando um std::map. Seu programa rastreará quantas vezes cada palavra única aparece e, em seguida, informará a frequência de uma palavra específica.

As seguintes entradas serão fornecidas:

  • Um número inteiro n representando o número de palavras no texto
  • Em seguida, n strings representando as palavras no texto
  • Uma string representando a palavra-alvo para verificar a frequência

Seu programa deve:

  1. Criar um std::map<std::string, int> chamado wordCount
  2. Ler o número de palavras
  3. Para cada palavra, lê-la e atualizar sua contagem no mapa usando o operador de colchetes e o incremento
  4. Ler a palavra-alvo para verificar
  5. Imprimir a frequência da palavra-alvo usando o formato mostrado abaixo

Use o seguinte formato de saída exato:

The word "[target_word]" appears [frequency] times

Se a palavra-alvo não existir no mapa, acessá-la com o operador de colchetes criará automaticamente uma entrada com uma contagem de 0, portanto, você pode imprimir a frequência com segurança sem verificar se a palavra existe primeiro. Use wordCount[word]++ para incrementar a contagem de cada palavra conforme você a lê - isso criará novas entradas com contagem 1 para novas palavras ou incrementará as contagens existentes para palavras já vistas.

Experimente você mesmo

#include <iostream>
#include <map>
#include <string>
using namespace std;

int main() {
    // Lê o número de palavras
    int n;
    cin >> n;
    
    // Cria o mapa para armazenar as frequências das palavras
    map<string, int> wordCount;
    
    // TODO: Escreva seu código aqui
    // Lê n palavras e atualiza suas contagens no mapa
    // Em seguida, lê a palavra alvo e exibe sua frequência
    
    return 0;
}

Todas as lições de Lógica & Fluxo