Menghitung Jumlah Kata Dalam Kalimat Menggunakan Kode Program C++
Pada banyak aplikasi atau algoritma program, diperlukan operasi atau proses untuk menghitung jumlah kata dalam sebuah kalimat. Misalnya dalam aplikasi teks editor, aplikasi pengindeksan, atau aplikasi pemrosesan bahasa alami lainnya. Dalam pembahasan ini kita akan menggunakan bahasa pemrograman C++ untuk membuat kode program untuk menghitung jumlah kata dalam kalimat.
Contoh
Sebagai contoh, kalimat "Saya suka makan nasi goreng" memiliki 5 kata. Kata-kata tersebut adalah "Saya", "suka", "makan", "nasi", dan "goreng".
Permasalahan
Permasalahan yang harus diselesaikan adalah bagaimana cara menghitung jumlah kata dalam sebuah kalimat dengan menggunakan kode program C++.
Solusi
Untuk menghitung jumlah kata dalam sebuah kalimat dengan menggunakan kode program C++, kita dapat menggunakan beberapa pendekatan. Salah satu pendekatan yang sederhana adalah menggunakan fungsi string::find()
untuk menemukan spasi dalam kalimat. Namun, pendekatan ini tidak dapat menangani kalimat yang mengandung spasi ganda atau tabulasi.
Pendekatan yang lebih baik adalah menggunakan fungsi string::stringstream()
untuk memecah kalimat menjadi token-token. Token adalah potongan-potongan kalimat yang dipisahkan oleh spasi, tabulasi, atau karakter pemisah lainnya. Setelah kalimat dipecah menjadi token-token, kita dapat menghitung jumlah token untuk mendapatkan jumlah kata dalam kalimat.
Berikut adalah contoh kode program C++ untuk menghitung jumlah kata dalam kalimat:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int countWords(string sentence) {
stringstream ss(sentence);
string word;
int count = 0;
while (ss >> word) {
count++;
}
return count;
}
int main() {
string sentence = "Saya suka makan nasi goreng";
int count = countWords(sentence);
cout << "Jumlah kata dalam kalimat \"" << sentence << "\" adalah " << count << endl;
return 0;
}
Output:
Jumlah kata dalam kalimat "Saya suka makan nasi goreng" adalah 5
Kode program di atas menggunakan fungsi stringstream::operator>>()
untuk membaca kata-kata dari stringstream. Fungsi ini akan mengembalikan nilai true
jika ada kata yang dapat dibaca dan nilai false
jika tidak ada kata yang dapat dibaca.
Kode program di atas juga menggunakan variabel count
untuk menghitung jumlah kata dalam kalimat. Variabel count
diinisialisasi dengan nilai 0. Setiap kali fungsi stringstream::operator>>()
mengembalikan nilai true
, variabel count
akan ditambah 1.
Setelah semua kata dalam kalimat telah dibaca, fungsi countWords()
akan mengembalikan nilai count
yang berisi jumlah kata dalam kalimat.