Menu
CoddyTech

Rangkuman: Penghitung Kata

Termasuk bagian Logika dan Alur dalam perjalanan Rust di Coddy. Pelajaran 34 dari 66.

challenge icon

Tantangan

Mudah

Kamu akan menerima sebuah kalimat sebagai input. Hitung berapa kali setiap kata muncul dalam kalimat, lalu simpan jumlahnya dalam hash map. Kemudian cetak setiap kata unik beserta jumlahnya.

Persyaratan:

  • Impor HashMap dari std::collections
  • Buat hash map mutable dengan tipe HashMap<String, i32>
  • Baca kalimat input sebagai satu baris
  • Pisahkan kalimat menjadi kata-kata individual menggunakan .split_whitespace()
  • Untuk setiap kata, gunakan .entry() dengan .or_insert(0) untuk menginisialisasi jumlah menjadi 0 jika kata tersebut belum ada
  • Setelah menggunakan .or_insert(0), tambahkan jumlah untuk kata tersebut sebesar 1
  • Setelah memproses semua kata, lakukan iterasi pada hash map dan cetak setiap kata beserta jumlahnya dengan format: [word]: [count]

Input:

  • Satu baris yang berisi kalimat dengan kata-kata yang dipisahkan oleh spasi (misalnya, hello world hello rust world hello)

Output:

  • Satu baris untuk setiap kata unik dengan format: [word]: [count]
  • Urutan baris output dapat berbeda di setiap proses pengujian

Coba sendiri

use std::collections::HashMap;
use std::io;

fn main() {
    // Baca kalimat input
    let mut sentence = String::new();
    io::stdin().read_line(&mut sentence).expect("Failed to read line");
    let sentence = sentence.trim();
    
    // Buat hash map yang dapat diubah untuk menyimpan jumlah kemunculan kata
    let mut word_count: HashMap<String, i32> = HashMap::new();
    
    // TODO: Tulis kodemu di bawah ini
    // Pisahkan kalimat menjadi kata-kata dan hitung jumlah kemunculan setiap kata
    
    
    // Tampilkan setiap kata beserta jumlah kemunculannya
    
}

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler Rust online