Transcript PS 3

PEMROGRAMAN SISTEM
Pertemuan IV
OPERASI DASAR MASUKAN
DAN KELUARAN
Cout
Dengan cout pemrogram dapat
meletakkan suatu informasi ke standart
output (normalnya berupa layar)
 Contoh :

cout << “Pilihan Anda salah !\a\n”;
cout << “Nilai = “ << nilai << endl;
cout << “Masukkan sebuah bilangan bulat = “ ;
cin

Obyek cin bermanfaat untuk untuk
membaca data dari standart input
(normalnya adalah keyboard).
cin dengan sebuah variabel

Bentuk pernyataan cin untuk membaca
data dari keyboard dan meletakkan ke
sebuah variabel variabel bernama var :
cin >> var
Contoh program
#include <iostream.h>
void main ()
{
int bil_x ; // Definisi bilangan bulat
float bil_y ; // Definisi bilangan pecahan
cout << “Masukkan sebuah bilangan bulat = “ ;
cin >> bil_x ;
cout << “Masukkan sebuah bilangan pecahan = “ ;
cin >> bil_y;
cout << “ Bilangan Bulat = “ << bil_x << endl;
cout << “ Bilangan Pecahan = “ << bil_y << endl;
}
Tampak bahwa bentuk perintah untuk
membaca data bertipe int ataupun float
sama saja. Hal ini berlaku untuk semua
jenis data dasar ( char, int, long, float
ataupun double).
 Salah satu manfaat dari adanya fasilitas
pemasukkan dari keyboard adalah
memungkinkan untuk membuat program
yang membaca data yang berubah-ubah.

cin dengan lebih dari
satu variabel

Bentuk cin dapat juga sebagai berikut :
cin >> bil_x >> bil_y ;
Contoh program
#include <iostream.h>
void main ()
{
int bil_x ; // Definisi bilangan bulat
float bil_y ; // Definisi bilangan pecahan
cout << “Masukkan sebuah bilangan bulat dan “ << endl;
cout << “Masukkan sebuah bilangan pecahan “ << endl ;
cin >> bil_x >> bil_y;
cout << “ Bilangan Bulat = “ << bil_x << endl;
cout << “ Bilangan Pecahan = “ << bil_y << endl;
}
cin untuk membaca karakter
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
void main ()
{
char karakter;
clrscr();
cout << “Masukkan sebuah karakter “;
cin >> karakter;
cout << “Anda mengetik “ << karakter << endl;
cout << “Masukkan sebuah karakter “;
cin >> karakter;
cout << “Anda mengetik “ << karakter << endl;
}
Tampak pada contoh program diatas,
untuk setiap karakter yang dimasukkan
harus diakhiri dengan enter ( ).
 Penekanan enter pada pemasukkan
sebuah karakter terkadang tidak
dikehendaki oleh pemakai.
 Jika demikian, anda dapat menggunakan
fungsi getch() ataupun getche()

Fungsi getc() dan getche()
Fungsi getc() dan getche() berguna untuk
membaca sebuah karakter tanpa perlu
menekan enter.
 Selain itu, fungsi ini juga dapat dipakai
untuk membaca tombol seperti spasi, tab
ataupun enter.

Bentuk pemakaiannya :
karakter = getch()
karakter = getche()
 Perbedaan kedua fungsi ini adalah :
 getch()
tidak menampilkan karakter dari tombol
yang ditekan
 getche()
menamilkan karakter dari tombol yang
ditekan

Contoh program
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
void main()
{
char karakter;
clrscr();
cout << “Masukkan sebuah karakter “;
karakter = getch();
cout << “Anda mengetik “ << karakter << endl;
cout << “Masukkan sebuah karakter “;
karakter = getch();
cout << ”Anda mengetik “ << karakter << endl;
}
Masukkan sebuah karakter a
Anda mengetik a
Masukkan sebuah karakter b
Anda mengetik b
 Tidak ditampilkan
 Tidak ditampilkan
Sebuah getch() bisa pula dimanfaatkan untuk
menunggu sembarang tombol ditekan.
 Pada keadaan seperti ini tidak perlu diletakkan
ke variabel.
#include <iostream.h >
#include <conio.h>
void main()
{
cout << “Tekanlah sembarang tombol” << endl;
cout << “Untuk mengakhiri program ini “ ;
getch();
}

Manipulator
Manipulator umumnya digunakan untuk
mengatur tampilan data.
 Misalnya untuk mengatur agar suatu nilai
ditampilkan dengan lebar 10 karakter dan
diatur rat kanan terhadap lebar tersebut.

Manipulator endl
Manipulator endl digunakan untuk
menyisipkan karakter newline.
 Dengan kata lain manipulato ini identik
dengan ‘\n’.

Contoh program
#include <iostream.h>
#include <conio.h>
void main()
{
int jumbar1 = 150;
jumbar2 = 23;
jumbar3 = 1401;
clrscr(); // Hapus layar
cout << “Barang 1 = “ << jumbar1 << endl;
cout << “Barang2 = “ << jumbar2 << endl;
cout << “Barang3 = “ << jumbar3 << endl;
}
Manipulator setw()

Manipulator setw() bermanfaat untuk
mangatur lebar dari suatu tampilan data.
Contoh program
#include <iostream.h>
#include <iomaip.h> // Untuk manipulator setw()
#include <conio.h>
void main()
{
int jumbar1 = 150;
jumbar2 = 23;
jumbar3 = 1401;
clrscr(); // Hapus layar
cout << “Barang 1 = “ << setw(4) << jumbar1 << endl;
cout << “Barang2 = “ << setw(4) << jumbar2 << endl;
cout << “Barang3 = “ << setw(4) << jumbar3 << endl;
}
Barang 1 =
Barang 2 =
Barang 3 =
150
23
1401
Dengan menggunakan setw(), terlihat
hasil eksekusi adalah rata kanan.
Ini dapat di bedakan dengan hasil
eksekusi pada sebelumnya yang rata kiri.
Manipulator setfill()

Manipulator setfill() berguna untuk
mengatur karakter yang dipakai memenuhi
bagian field yang ditentukan setw(), yang
tidak dipakai untuk menampilkan data.
Contoh program
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
void main()
{
float harga = 123.45
clrscr();
cout << “ setw(8) << harga << endl;
cout << setfill(‘*’) ; // Karakter pemenuh  *
cout << setw(8) << harga << endl;
}
123.45
**123.45
Pada program diatas 123.45 ditampilkan
dengan lebar 8 karakter dan didahului oleh
2 karakter spasi.
 Apabila terdapat pernyataan setfill(‘*’)
maka 2 karakter spasi diisi oleh karakter ‘
*‘.

Pemakaian setiosflag()

Manipulator setiosflag() merupakan
manipulator yang dapat dipakai untuk
mengontrol sejumlah tanda format yang
tercantum dalam tebel berikut :
Tanda Format
Keterangan
ios::left
Menyetel rata kiri terhadap lebar feeld yang diatur
melalui setw()
ios::rigth
Menyetel rata kanan terhadap lebar feeld yang diatur
melalui setw()
ios::scientific
ios::fixed
ios::dec
Menformat keluaran dalam notasi eksponensial
ios::oct
ios::hex
ios::uppercase
Memformat keluaran basisi 8 (oktal)
ios::showbase
Manmpilkan
awalan
0x
untuk
bilanagan
heksadesimal atau 0 (nol) untuk bilangan oktal
ios::showpoint
Menampilkan titik desimal pada bilangan pecahan
yang tidak memiliki bagian pecahan
ios::showpos
Untuk menampilkan tanda + pada bilangan positif
Menformat keluaran dalam bentuk notasi desimal
Menformat keluaran dalam basis 10 (desimal)
Memformat huruf dalam basis 16 (heksadesimal)
Memformat huruf pada notasi heksadesimal dalam
bentuk huruf kapital
Manipulator setprecision()





Apabila anda bekerja dalam bilangan pecahan, Anda
juga mengatur jumah digit pecahan yang ingin
ditampilkan. Hal ini dapat dilakukan dengan
menggunakan manipulator setprecision(). Bentuknya :
setprecision(n)
dengan n menyatakan jumlah digit pecahan yang
diinginkan.
Sebagai contoh :
cout << setprecision(2) << 123.56789 << endl;
akan menapilkan :
123.57
bagian pecahan terdiri atas dua digit sesuai dengan
argumen pada setprecision().
Contoh program
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
float nilai = 123.45;
clrscr();
cout << setiosflags(ios::fixed);
cout << setprecision(0) << nilai << endl;
cout << setprecision(1) << nilai << endl;
cout << setprecision(2) << nilai << endl;
cout << setprecision(3) << nilai << endl;
cout << setprecision(4) << nilai << endl;
cout << setprecision(5) << nilai << endl;
cout << setprecision(6) << nilai << endl;
cout << setprecision(7) << nilai << endl;
}
123
123.4
123.45
123.450
123.4500
123.45000
123.449997
123.4499969
Contoh program
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
float nilai = 123.45;
clrscr(); // Hapus layar
cout << setprecision(0) << nilai << endl;
cout << setprecision(1) << nilai << endl;
cout << setprecision(2) << nilai << endl;
cout << setprecision(3) << nilai << endl;
cout << setprecision(4) << nilai << endl;
cout << setprecision(5) << nilai << endl;
cout << setprecision(6) << nilai << endl;
cout << setprecision(7) << nilai << endl;
}
1e+02
1e+02
1.2e+02
123
123.4
123.45
123.45
123.45
BEDANYA …..???