BASIC INPUT OUTPUT PADA PEMROGRAMAN C++
1. Perintah Output
Perintah Output adalah perintah yang digunakan untuk
mengeluarkan hasil proses komputer sehingga bisa dibaca oleh si pemakai (user).
Adapun media yang digunakan untuk menampilkan hasil output tadi bisa berupa
monitor atau dicetak ke kertas melalui printer. Salah satu fungsi untuk
menampilkan output dalam Turbo C++ adalah :
Fungsi printf() digunakan untuk mencetak data baik
berupa teks, numerik, konstanta maupun variabel. Contoh penggunaan printf()
bisa dilihat pada contoh program berikut :
Bisa dilihat dari contoh diatas, bahwa perintah
printf() bisa diikuti dengan tanda %s, %f, %d dan lain-lain. Tanda % tersebut
disebut dengan penentu format (format specifier) Fungsi printf() digunakan untuk menampilkan semua
jenis data (numeric dan karakter)
Perintah lain untuk menampilkan output adalah dengan
puts() dan putchar().
Fungsi puts() digunakan untuk menampilkan data
string dan secara otomatis akan diakhir dengan perpindahan baris.
Fungsi putchar() digunakan
untuk menampilkan sebuah karakter.berikut adalah contoh penggunaan putchar()
dan puts()
Penggunaan cout stream dhubungkan dengan operator
overloaded << (Sepasang tanda
"less than"). Contoh :
cout << "Nama Saya Afandi"; //
Tampilkan Output Nama Saya Afandi
cout << 1000; // Tampilkan angka 1000 pada
layar
cout << x; // Tampilkan variabel x on pada layar
Operator << dikenal sebagai insertion
operator, dimana berfungsi untuk menginput data yang mengikutinya. Jika berupa
string, maka harus diapit dengan kutip ganda ("), sehingga membedakannya dari
variable. Contoh
cout << "Hello"; // Tampilkan Hello pada layar
cout << Hello; // Tampilkan variabel Hello pada layar
Operator insertion (<<) dapat digunakan lebih
dari 1 kali dalam kalimat yang sama, Contoh
:
cout << "Hallo, " <<
"nama " << "Saya Afandi";
Contoh diatas akan menampilkan Hallo nama Saya Afandi sentence pada layar
monitor. Manfaat dari pengulangan penggunaan operator insertion (<<)
adalah untuk menampilkan kombinasi dari satu variabel dan konstanta atau lebih,
contoh :
cout << "Hello I am " << age
<< " years old and my zipcode is " << zipcode;
Misalkan variable age = 24 dan variable zipcode = 90064 maka output yang
dihasilkan :
Hello, I am 24 years old and my zipcode is 90064
Contoh :
cout << "Baris pertama \n ";
cout << "Baris kedua.\nBaris
ketiga.";
Output :
Baris pertama.
Baris kedua.
Baris ketiga.
Selain dengan karakter new-line, dapat juga
menggunakan manipulator endl, contoh :
cout << "Baris pertama" <<
endl;
cout << "Baris kedua" << endl;
Output :
Baris pertamaBaris kedua
2. Perintah Input
Setiap bahasa pemrograman tidak akan bisa digunakan
secara fleksibel jika tidak memiliki perintah input. Perintah input adalah
sebuah perintah dalam bahasa program yang mampu meneruskan nilai dari operator
untuk diproses oleh komputer. Perintah input memerlukan perangkat keras input,
biasanya adalah keyboard. Dalam Turbo C++, terdapat tiga perintah input yaitu
scanf(), getche(), getch() dan gets().
Bentuk umum dari fungsi
scanf() adalah sebagai berikut :
Penggunaan scanf() biasanya dikombinasikan dengan
perintah printf(). Perintah printf() disini berfungsi sekedar menampilkan
keterangan tentang apa yang harus diinputkan, sehingga operator bisa langsung
mengerti harus memasukkan data apa. Untuk penentu format pada scanf(), dapat
dilihat pada tabel berikut :
Tabel 3.3 Tabel Penentu Format scanf()
Selain itu, penggunaan scanf() juga harus
menyertakan tanda ‘&’ pada awal nama variabel. Tanda ‘&’ disini
befungsi sebagai operator alamat (address operator).
Contoh penggunaan scanf() sebagai berikut :
Jika terdapat beberapa proses input (memasukkan
data) sekaligus, maka sebaiknya ditambahkan fungsi fflush(stdin); setelah
fungsi scanf(). Fungsi fflush(stdin) berfungsi menghapus buffer di dalam alat
I/O.
Scanf() juga bisa
digunakan untuk menginputkan beberapa data sekaligus dalam satu baris asalkan
jumlah dan tipe penentu format sesuai dengan variabel yang akan diinputkan.
Data yang akan dimasukkan dapat dipisahkan dengan spasi, tab atau tanda pemisah
lain seperti koma (,), garis hubung(-), atau titik dua(:). Pemisah data dalam
input yang digunakan harus sama dengan pemisah data dalam scanf().
Fungsi input getche() memiliki sifat yang sedikit
berbeda dari scanf(). Perbedaan tersebut antara lain :
- Bila dalam scanf() jumlah karakter data yang
diinputkan boleh bebas, maka dalam getche() hanya sebuah karakter yang bisa
diterima.
2. Bila scanf() membutuhkan tombol RETURN/ENTER
untuk mengakhiri input, maka dalam getche() tidak membutuhkannya. Input
dianggap selesai begitu kita memasukkan satu karakter dan secara otomatis akan
melanjutkan ke baris perintah berikutnya.
getche() merupakan singkatan dari get character and
echo yang artinya ‘menerima sebuah karakter kemudian tampilkan’. Input yang diterima getche()
akan disimpan ke dalam variabel karakter yang sebelumnya harus sudah
dideklarasikan.
Satu-satunya perbedaan antara getche() dan getch()
adalah getche()akan menampilkan karakter yang kita ketikkan, sedangkan getch()
tidak akan menampilkan, melainkan hanya menyimpannya dalam memori saja, jadi
apa yang kita ketikkan tidak akan muncul dilayar sebelum kita memberikan
perintah untuk mencetak nilai tersebut.
- Fungsi
getch() dan getche() digunakan untuk membaca data karakter.
- Karakter
yang dimasukkan tidak perlu diakhiri dengan penekanan tombol enter.
- Tidak
memberikan efek pergantian baris secara otomatis
- Jika
menggunakan fungsi getch() karakter yang dimasukkan tidak akan ditampilkan pada
layar sehingga sering digunakan untuk meminta inputan berupa password.
- Sedangkan
pada getche() karakter yang dimasukkan akan ditampilkan pada layar
ada beberapa fungsi dari gets() yaitu:
- Fungsi
gets() digunakan untuk memasukkan data bertipe karakter dan tidak dapat
digunakan untuk memasukkan data numerik.
- Harus
diakhiri dengan penekanan tombol enter
- Cursor
secara otomatis akan pindah baris
- Tidak memerlukan penentu format
Menangani standard input pada C++ dengan menambahkan
overloaded operator extraction (>>) pada cin stream. Harus diikuti bengan
variable yang akan menyimpan data. Contoh
:
int umur;
cin >> umur;
Contoh diatas mendeklarasikan variabel age dengan
tipe int dan menunggu input dari cin (keyborad) untuk disimpan di variabel
umur.
cin akan memproses input dari keyboard sekali saja
dan tombol ENTER harus ditekan.
Contoh :
Output :
Silahkan masukan nilai: 2
Nilai jika di kali 5 adalah: 10.
cin juga dapat digunakan untuk lebih dari satu
input :
cin >> a >> b;
Equivalen dengan
:
cin >> a;
cin >> b;
Dalam hal ini data yang di input harus 2, satu untuk
variabel a dan lainnya untuk variabel b yang penulisannya dipisahkan dengan : spasi, tabular atau newline.
Referensi :
Andri Kristanto. 2003. “Struktur Data dengan C++”.
Yogyakarta: Graha Ilmu. 2. Budi Sutedjo, Michael A.N. 2000. “Algoritma dan
Teknik Pemrograman”. Yogyakarta: ANDI OFFSET. 3. Fathul Wahid. 2004.
“Dasar-Dasar Algoritma dan Pemrograman”. Yogyakarta: ANDI OFFSET. 4. Heri
Sismoro, Kusrini Iskandar. 2004. ”Struktur Data dan Pemrograman dengan Pascal”.
Yogyakarta:ANDI OFFSET. 5. Insap Santosa. 2004. ”Struktur Data Menggunakan
Turbo Pascal 6.0”. Yogyakarta: ANDI OFFSET. 6. Rinaldi Munir, Leoni Lidya.
2002.