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 | Menformat keluaran dalam notasi eksponensial |
ios::fixed | Menformat keluaran dalam bentuk notasi desimal |
ios::dec | Menformat keluaran dalam basis 10 (desimal) |
ios::oct | Memformat keluaran basisi 8 (oktal) |
ios::hex | Memformat huruf dalam basis 16 (heksadesimal) |
ios::uppercase | Memformat huruf pada notasi heksadesimal dalam bentuk huruf kapital |
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 |
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 :
//*-------------------------------------------------------*
//* Contoh 3.5 : Menunjukkan efek manipulator *
//* setprecisoin() *
//*-----------------------------------------------------*
#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(5) << nilai << endl;
cout << setprecision(6) << nilai << endl;
cout << setprecision(7) << nilai << endl;
}
Hasil eksekusi :
123
123.4
123.45
123.450
123.4500
123.45000
123.449997
123.4499969
Contoh berikut menunjukkan hasil bila setw() dipakai tetapi ios::fixed tidak diikut sertakan.
//*---------------------------------------------------------*
//* Contoh 3.6 : Menunjukkan efek setprecision() *
//* tanpa tanda format ios::fixed *
//*---------------------------------------------------------*
#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;
}
Hasil eksekusi :
1e+02
1e+02
1.2e+02
123
123.4
123.45
123.45
123.45
3.3. cin
Obyek cin bermanfaat untuk untuk membaca data dari standart input (normalnya adalah keyboard).
cin dengan sebuah variabel
cin >> var
Bentuk pernyataan cin untuk membaca data dari keyboard dan meletakkan ke sebuah variabel variabel bernama var :
Contoh program yang menunjukkan penmakaian cin untuk membaca data bertipe int dan float.
//*------------------------------------------------------*
//* Contoh 3.7 : Membaca data bertipe int dan *
//* float dari keyboard *
//*------------------------------------------------------*
#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;
}
Hasil eksekusi :
Masukkan sebuah bilangan bulat = 123
Masukkan sebuah bilangan pecahan = 23.1
Bilangan Bulat = 123
Bilangan Pecahan 23.1
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 ;
Pada contoh ini kedua bilangan dapat bilangan dapat dimasukkan dari keyboard dengan pemisah berupa spasi, tab atau enter.
Contoh program :
//*-----------------------------------------------------------*
//* Contoh 3.8 : Untuk membaca data dengan lebih *
//* dari satu variabel *
//*-----------------------------------------------------------*
#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;
}
Hasil eksekusi :
Masukkan sebuah bilangan bulat dan
Masukkan sebuah bilangan pecahan 20 23.2 ¿
Bilangan Bulat = 20
Bilangan Pecahan 23.2
cin untuk membaca karakter
cin juga dapat dipakai untuk membaca sebuah karakter. Sebagai contoh :
//*------------------------------------------------------------*
//* Contoh 3.9 : Membaca karakter dengan cin *
//*------------------------------------------------------------*
#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;
}
Hasil eksekusi :
Masukkan sebuah karakter a ¿
Anda mengetik a
Masukkan sebuah karakter b ¿
Anda mengetik b
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().
3.4. Fungsi getc() dan getche()
karakter = getch()
karakter = 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 :
Perbedaan kedua fungsi ini adalah :
- getch() : tidak menampilkan karakter dari tombol yang ditekan
- getche() : menamilkan karakter dari tombol yang ditekan
Contoh program :
//*-------------------------------------------------------------*
//* Contoh 3.10 : Membaca karakter dengan getch() *
//*-------------------------------------------------------------*
#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;
}
Hasil eksekusi :
Masukkan sebuah karakter a 7 Tidak ditampilkan
Anda mengetik a
Masukkan sebuah karakter b 7 Tidak ditampilkan
Anda mengetik b
Sebuah getch() bisa pula dimanfaatkan untuk menunggu sembarang tombol ditekan. Pada keadaan seperti ini tidak perlu diletakkan ke variabel.
Contoh program :
//*--------------------------------------------------------------*
//* Contoh 3.11 : getch() untuk memebaca sembarang *
//* tombol *
//*--------------------------------------------------------------*
#include <iostream.h >
#include <conio.h>
void main()
{
cout << “Tekanlah sembarang tombol” << endl;
cout << “Untuk mengakhiri program ini “ ;
getch();
}
karakter = 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 :
Perbedaan kedua fungsi ini adalah :
- getch() : tidak menampilkan karakter dari tombol yang ditekan
- getche() : menamilkan karakter dari tombol yang ditekan
Contoh program :
//*-------------------------------------------------------------*
//* Contoh 3.10 : Membaca karakter dengan getch() *
//*-------------------------------------------------------------*
#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;
}
Hasil eksekusi :
Masukkan sebuah karakter a 7 Tidak ditampilkan
Anda mengetik a
Masukkan sebuah karakter b 7 Tidak ditampilkan
Anda mengetik b
Sebuah getch() bisa pula dimanfaatkan untuk menunggu sembarang tombol ditekan. Pada keadaan seperti ini tidak perlu diletakkan ke variabel.
Contoh program :
//*--------------------------------------------------------------*
//* Contoh 3.11 : getch() untuk memebaca sembarang *
//* tombol *
//*--------------------------------------------------------------*
#include <iostream.h >
#include <conio.h>
void main()
{
cout << “Tekanlah sembarang tombol” << endl;
cout << “Untuk mengakhiri program ini “ ;
getch();
}
good luck
Pranala --> Contoh Program C++ Menggunakan Iomanip dan setw