Dasar-Dasar Input dan Output Pada C++

posted in: Pemrograman C++ | 1

Dalam bahasa pemrograman C++, terdapat suatu instruksi yang berfungsi menerima suatu nilai dari luar dan suatu instruksi yang berfungsi mencetak hasil pemrosesan pada layar CLI. Kedua instruksi tersebut adalah cin dan cout. Cin digunakan untuk menerima input, sedangkan cout berfungsi mencetak nilai hasil pemrosesan. Untuk dapat menggunakan kedua instruksi tersebut, kamu diharuskan menyertakan header iostream atau jika ditulis dalam kode program menjadi #include <iostream>.

Untuk menampilkan hasil pemrosesan di layar monitor menggunakan sintaks sebagai berikut:


cout<<"Halo sahabat sinauarduino.com"<<endl;

Seperti yang sudah Mimin jelaskan di awal perkenalan dengan bahasa pemrograman C++. Sedangkan, untuk menerima input data dari user, kamu dapat menggunakan instruksi sebagai berikut:


cin>>variabel_penampung;

Selain berbeda di jenis instruksinya yaitu cin dan cout juga berbeda pada arah tandanya. Untuk cout mengarah ke kiri (<<), sedangkan cin mengarah ke kanan (>>).

Kelemahan Instruksi Cin

Ternyata sobat, instruksi cin ini memiliki kelemahan, penasaran? Cermati source code berikut ini:


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

int main(){
string tampungan1,tampungan2;
cout<<"Masukkan sembarang nama pertama: ";
cin>>tampungan1;
cout<<"Nama yang kamu masukkan adalah: "<<tampungan1<<endl;
cout<<endl;
cout<<"Masukkan sembarang nama kedua: ";
cin>>tampungan2;
cout<<"Nama yang kamu masukkan adalah: "<<tampungan2<<endl;
return 0;
}

Pada program di atas, berfungsi untuk menampung data yang dimasukkan oleh user berupa dua buah nama. Nama pertama ditampung dalam variabel tampungan1 dengan tipe string, sedangkan nama kedua ditampung dalam variabel tampungan2 dengan tipe string.

Ketika kamu memasukkan satu nama yang terdiri dari satu buah kata pada setiap program meminta input nama, maka program berjalan sesuai dengan konsep awal. Contohnya adalah sebagai berikut:

cin-satu-data

setiap nama-nama yang kamu inputkan, akan tepat ditampilkan pada setiap stepnya. Namun ketika kamu memasukkan nama pada input pertama dengan nama yang terdiri dari dua kata atau lebih, data yang kamu masukkan tersebut akan diumpan ke variabel berikutnya, walaupun program belum meminta memasukkan nilai pada tampungan2. Kasusnya seperti ini:

cin-dua-data

Nah, dalam C++ terdapat solusi untuk mengatasi masalah tersebut, dimana instruksi cin gagal menerima input dengan dua atau lebih kata untuk disimpan dalam satu variabel saja, yaitu menggunakan instruksi getline(), dimana jika dituliskan dalam source code menjadi sebagai berikut getline(cin, variabel_penampung). Berikut jika diimplementasikan pada source code:


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

int main(){
string tampungan1,tampungan2;
cout<<"Masukkan sembarang nama pertama: ";
getline(cin,tampungan1); //implementasi getline pada tampungan1
cout<<"Nama yang kamu masukkan adalah: "<<tampungan1<<endl;
cout<<endl;
cout<<"Masukkan sembarang nama kedua: ";
getline(cin,tampungan2); //implementasi getline pada tampungan2
cout<<"Nama yang kamu masukkan adalah: "<<tampungan2<<endl;
return 0;
}

Hasil output programnya sekarang menjadi seperti berikut:

getline-cin

Sekarang kamu bahkan bisa menginputkan data yang terdiri dari satu atau lebih kata dengan mudah dan sesuai konsep yang kamu inginkan.

 

“Selagi masih ada ilmu yang bermanfaat dan kesempatan, sebarkanlah”

Salam sinauarduino.com

One Response

  1. maap kok waktu saya coba output yang muculnya cuman 1

Leave a Reply