Rabu, 24 April 2013

Fungsi Manipulator dalam C++


RESUME FUNGSI MANIPULATOR DALAM C++
Manipulator umumnya digunakan untuk mengatur format tampilan data. Misalnya untuk mengatur agar suatu nilai ditampilkan dengan lebar 10 karakter rata kanan, dan sebagainya.
Tabel Manipulator

Manipulator

Keterangan

Endl
Menyisipkan newline dan mengirimkan isi ke penyangga
Ends
Menyisipkan karakter null
Flush
Mengirimkan isi penyangga keluaran ke piranti keluaran
Dec
Mengkonversi ke bilangan basis sepuluh
Hex
Mengkonversi ke bilangan basis 16 (oktal)
Oct
Mengkonversi ke bilangan basis 8 (oktal)
setbase(int n)
Mengkonversi ke bilangan basis n (n=8, 10 atau 16)
setw(int n)
Mengatur lebar field untuk suatu nilai sebesar n karakter
setfill(int c)
Menyetel karakter pemenuh berupa c
setprecicion(int n)
Menyetel presisi bilangan pecahan sebesar n digit
setiosflags(long f )
Menyetel format yang ditentukan oleh f.f adalah tanda format pada tabel 3.3
Resetiosflags(long f )
Menghapus format yang ditentukan oleh f.f adalah tanda format pada tabel 3.3

a.    endl
Manipulator endl digunakan untuk menyisipkan karakter newline. Dengan kata lain manipulator ini identik dengan ‘\n’. Namun pada bahasa C++ lebih banyak digunakan manipulator ini dibanding manipulator C yang harus menggunakan karakter khusus ‘\n’
b.    setw()
Manipulator setw() bermanfaat untuk mengatur lebar dari suatu tampilan data.
     c.    setfill()
Manipulator setfill() berguna untuk mengatur karakter yang dipakai memenuhi bagian field yang ditentukan setw(), yang tidak dipakai untuk menampilkan data.
d.    ends
Manipulator ends berfungsi untuk menambahkan karakter null (ASCII nol) ke deretan suatu karakter. Hal seperti ini kadang-kadang diperlukan, misalnya jika ingin mengirim sejumlah karakter ke file disk dan mengakhirinya dengan karakter null.
Contoh :
            cout<<’a’<<’b’<<’c’<<ends;
Pernyataan di atas mengirimkan tiga buah karakter (a,b dan c) serta sebuah karakter null. Pada layar, ends akan menimbulkan sebuah karakter kosong.

e.    setiosflags()
Manipulator setiosflags() merupakan manipulator yang dapat dipakai untuk mengontrol sejumlah tanda format yang tercantum pada tabel 3.3 di bawah ini:
Tabel 3.3 Tanda format untuk menampilkan setiosflags()dan resetiosflags()
Nama
Tanda format

Keterangan

ios::left
Menyetel rata-kiri terhadap lebar field yang diatur melalui setw()
ios::right
Menyetel rata-kanan terhadap lebar field yang diatur melalui setw()
ios::scientific
Memformat keluaran dalam bentuk notasi eksponensial
ios::fixed
Memformat keluaran dalam bentuk notasi desimal
ios::dec
Memformat keluaran dalam basis 8 (oktal)
ios::oct
Memformat keluaran dalam basis 16 (hexadesimal)
ios::hex
Memformat huruf pada notasi heksadesimal ke bentuk huruf kapital
ios::uppercase
Menampilkan awalan 0x untuk bilangan heksadesimal atau 0 (nol) untuk bilangan oktal
ios::showbase
Menampilkan titik desimal pada bilangan pecahan yang tidak memiliki bagian pecahan
ios::showpoint
Menampilkan titik desimal pada pecahan yang tidak memiliki bagian pecahan
ios::showpos
Untuk menampilkan tanda + pada bilangan positif

f.       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;
getch();
}
g.     Oct,hex,dec

Oct,hex,dec berfungsi untuk menampilkan data dalam bentuk octal,hexadecimal dan desimal. File header yang harus disertakan adalah file header iomanip.h .
Contoh :


#include<iostream.h>
#include<conio.h>
#include<iomanip.h>
void main()
{
int jum1=1500;

cout<<jum1<<endl;
cout<<oct<<jum1<<endl;
cout<<hex<<jum1<<endl;
cout<<dec<<jum1<<endl;

getch();
}






3 komentar: