Menu
Coddy logo textTech

Özet - Kelime Frekansı

Coddy'nin C++ Journey'sinin Mantık & Akış bölümünün bir parçası — ders 29 / 56.

challenge icon

Görev

Kolay

Bir std::map kullanarak bir metin pasajındaki kelime frekanslarını sayan bir program oluşturun. Programınız her bir benzersiz kelimenin kaç kez göründüğünü takip edecek ve ardından belirli bir kelimenin frekansını raporlayacaktır.

Aşağıdaki girdiler sağlanacaktır:

  • Metindeki kelime sayısını temsil eden bir tam sayı n
  • Ardından metindeki kelimeleri temsil eden n adet dize (string)
  • Frekansını kontrol etmek için hedef kelimeyi temsil eden bir dize

Programınız şunları yapmalıdır:

  1. wordCount adında bir std::map<std::string, int> oluşturun
  2. Kelime sayısını okuyun
  3. Her kelime için, kelimeyi okuyun ve köşeli parantez operatörünü ve artırma (increment) işlemini kullanarak map'teki sayısını güncelleyin
  4. Kontrol edilecek hedef kelimeyi okuyun
  5. Aşağıda gösterilen formatı kullanarak hedef kelimenin frekansını yazdırın

Aşağıdaki tam çıktı formatını kullanın:

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

Eğer hedef kelime map'te mevcut değilse, ona köşeli parantez operatörü ile erişmek otomatik olarak 0 sayısına sahip bir girdi oluşturacaktır, bu nedenle kelimenin var olup olmadığını önceden kontrol etmeden frekansı güvenle yazdırabilirsiniz. Her kelimeyi okurken sayısını artırmak için wordCount[word]++ kullanın - bu, yeni kelimeler için 1 sayısıyla yeni girdiler oluşturacak veya zaten görülmüş kelimeler için mevcut sayıları artıracaktır.

Kendin dene

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

int main() {
    // Kelime sayısını oku
    int n;
    cin >> n;
    
    // Kelime frekanslarını saklamak için map oluştur
    map<string, int> wordCount;
    
    // TODO: Kodunuzu buraya yazın
    // n adet kelimeyi oku ve map içindeki sayılarını güncelle
    // Ardından hedef kelimeyi oku ve frekansını yazdır
    
    return 0;
}

Mantık & Akış bölümündeki tüm dersler