Materi Prompting C++ PJJ kelas X

 Prompting adalah proses meminta pengguna untuk memasukkan data. Dalam C++, ini biasanya dilakukan dengan:

  1. Menampilkan pesan (prompt) kepada pengguna. Pesan ini memberi tahu pengguna data apa yang harus mereka masukkan.

  2. Menerima masukan (input) dari pengguna.

1. Menampilkan Pesan (Prompt)

Untuk menampilkan pesan di konsol, kita menggunakan objek cout yang merupakan bagian dari pustaka iostream. cout singkatan dari "console output".

C++
#include <iostream>

int main() {
    std::cout << "Masukkan nama Anda: ";
    return 0;
}

Dalam contoh di atas, std::cout << "Masukkan nama Anda: "; akan menampilkan teks "Masukkan nama Anda: " di layar. Tanda << dikenal sebagai operator penyisipan (insertion operator), yang menyisipkan data ke cout.

2. Menerima Masukan (Input)

Untuk menerima masukan dari pengguna, kita menggunakan objek cin yang juga bagian dari pustaka iostream. cin singkatan dari "console input".

C++
#include <iostream>
#include <string> // Pustaka untuk menggunakan tipe data string

int main() {
    std::string nama; // Mendeklarasikan variabel 'nama' dengan tipe string
    std::cout << "Masukkan nama Anda: "; // Menampilkan prompt
    std::cin >> nama; // Menerima masukan dan menyimpannya ke variabel 'nama'
    std::cout << "Halo, " << nama << "!"; // Menampilkan pesan sambutan
    return 0;
}

Dalam contoh ini, std::cin >> nama; akan menunggu pengguna mengetikkan sesuatu dan menekan Enter. Data yang diketikkan akan disimpan ke dalam variabel nama. Operator >> dikenal sebagai operator ekstraksi (extraction operator).


Praktek Lanjutan dan Tips

Menggunakan getline untuk Teks dengan Spasi

Secara default, std::cin >> hanya akan membaca kata hingga menemukan spasi, tab, atau baris baru. Ini bermasalah jika Anda ingin membaca frasa atau kalimat lengkap, misalnya "Jakarta, Indonesia".

Untuk mengatasi ini, gunakan fungsi getline yang membaca seluruh baris hingga baris baru ditemukan.

C++
#include <iostream>
#include <string>

int main() {
    std::string alamat;
    std::cout << "Masukkan alamat lengkap Anda: ";
    std::getline(std::cin, alamat); // Menggunakan getline untuk membaca satu baris penuh
    std::cout << "Alamat Anda adalah: " << alamat << std::endl;
    return 0;
}

Penting: Saat menggunakan getline setelah cin, sisa karakter baris baru dari cin dapat mengganggu getline. Untuk menghindarinya, Anda perlu membersihkan buffer input dengan std::cin.ignore().

C++
#include <iostream>
#include <string>

int main() {
    int umur;
    std::string nama;

    std::cout << "Masukkan umur Anda: ";
    std::cin >> umur;

    // Membersihkan buffer input sebelum menggunakan getline
    std::cin.ignore(); 

    std::cout << "Masukkan nama lengkap Anda: ";
    std::getline(std::cin, nama);

    std::cout << "Halo, " << nama << "! Umur Anda adalah " << umur << " tahun." << std::endl;
    return 0;
}

Validasi Masukan Pengguna

Program yang baik harus bisa menangani masukan yang tidak valid, misalnya jika pengguna memasukkan teks saat diminta angka.

Anda dapat menggunakan loop dan pemeriksaan status stream untuk memastikan masukan yang valid.

C++
#include <iostream>

int main() {
    int angka;
    std::cout << "Masukkan sebuah angka: ";
    while (!(std::cin >> angka)) { // Loop selama masukan gagal
        std::cout << "Masukan tidak valid. Silakan masukkan angka: ";
        std::cin.clear(); // Mengatur ulang status error stream
        std::cin.ignore(10000, '\n'); // Mengabaikan sisa baris masukan
    }
    std::cout << "Anda memasukkan angka: " << angka << std::endl;
    return 0;
}

Dalam contoh ini:

  • std::cin >> angka akan mengevaluasi sebagai false jika masukan tidak cocok dengan tipe data int.

  • std::cin.clear() akan membersihkan status kesalahan pada cin.

  • std::cin.ignore() akan mengabaikan sisa karakter dalam buffer input, mencegah loop tak terbatas.


Ringkasan

  • Gunakan cout untuk menampilkan pesan (prompt) kepada pengguna.

  • Gunakan cin untuk membaca masukan dari pengguna untuk satu kata.

  • Gunakan getline(cin, variabel) untuk membaca masukan yang mengandung spasi.

  • Selalu pertimbangkan validasi masukan untuk membuat program Anda lebih tangguh.

selamat belajar 

Komentar

Postingan populer dari blog ini

Rangkuman Materi dan Soal latihan ASAT. Genap Kelas XI

PRINSIP PRINSIP KERJA PRESTATIF

TUGAS LKPD 4 MATERI KODING DAN CONTOH SOAL KELAS X 2025