Borland C

++

DIKTAT KULIAH PEMROGRAMAN KOMPUTER

Pemrograman C++ dengan Borland C++ 5.02 (Edisi Revisi)

Pembahasan

• • • • • • • • • •

Pengenalan Bahasa C++ Pengenalan Model Data, Perintah Masukan dan Keluaran Operator Borland C++ Operasi Penyeleksian Kondisi Proses Perulangan Operasi String Array Pointer Fungsi Macro Structure

Frieyadie, S.Kom

Kata Pengantar

BORLAND C++

Kata Pengantar

Puji dan syukur kehadirat Allah S.W.T, yang telah memberikan rahmat dan hidayah yang sangat besar kepada penulis untuk menyelesaikan Edisi Revisi Buku Pemrogramman C++ dengan menggunakan Borland C++ 5.02. Buku Edisi Revisi Pemrogramman C++ dengan Borland C++ 5.02 dibuat agar mahasiswa/i Bina Sarana Informatika khususnya dan perguruaan tinggi lain, dapat mempelajari, mencoba dan melatih Pemrograman C++ dengan Borland C++ 5.02secara cepat dan tepat sesuai dengan kebutuhkan. Didalam Buku Edisi Revisi Pemrogramman C++ dengan Borland C++ 5.02 latihan-latihan yang tersedia dapat juga dicoba pada Borland Turbo C++. Disini tidak membahas beberapa hal yang mendasar sehingga dapat mempelajari hal-hal lainnya sendiri yang tidak dibahas dalam buku ini. Semoga buku ini bermanfaat bagi mahasiswa/i yang mau belajar.

Jakarta, 17 Maret 2007

Frieyadie, S.Kom Penulis

Frieyadie, S.Kom

i

Kom ii .Daftar Isi Frieyadie. S.

....13 2........................ Variabel Numerik ... cin() ................................... puts() ..12 Variabel ........................14 2......12 2...........................5...14 2..........2................................................................13 2..........................................................................................................................4...................36 2..6 Mencetak File Editor .........................................19 2.................4........................................13 2................3................................3............................................................................8..1.....2.................... 2............................. 1.........................................10 Sekilas Perkembangan Bahasa C ........................................5 Membuka File Editor .............7 Keluar dari Borland C++ 5.......9.................................................4.......................................................................................................................................... 1..........32 2... 1................. 1..................02 ..................2...........................................4................................ ii Pengenalan Bahasa C++ 1..............................................36 Latihan ........2....... Perintah Masukan dan Keluaran 2....3........ Konstanta Bilangan ..........................3 Menyimpan File Editor ..........1........ Variabel Teks ............................................................ getch() .............................35 2................................... 2................. 2..............1..2........................6..... putchar() ........5.1................................ 1..1..2..................................... gets() ...........3.4.............. 1..............................................3..............................................................................i .......5............ Fungsi Manipulator ................1 Pengenalan IDE Borland C++ ........................2.................. Deklarasi Konstanta ...................................................................................................................................................................... iii Pemrogramman C++ .................5.34 2........11 Konstanta ............4.........2..32 2..... printf() .................................4.............. Deklarasi Variabel .......... scanf() ............................................6................4 Menterjemahan Program .............1 Membuat File Editor....................... 1.....19 2................4.................18 2....33 2.8 Bab 2 Pengenalan Model Data.......................................................... 2................5....................................................5 Menjalankan Program.................3... 1...................3....................................... Konstanta Teks ........................................7 Struktur Program C++......5...........Daftar Isi BORLAND C++ Daftar Isi Kata Pengantar Daftar Isi Bab 1 .................................................................................... getch() .......... cout() ...................13 Perintah Keluaran ........1.........................................................20 Perintah Masukan ...........7........2...............................4..............2.5.......12 2........................12 2...5.............................. Pengenalan Tipe Data ........ 1.....................3....................5...........

.1......Case ................................6...............50 Operator Bitwise .................................................45 Operator Logika ........64 Pernyataan Switch ........................6...............75 5...................2...............................................46 3........................6................................................5.......59 4............................54 3..... Perulangan Tak Berhingga .....................................4......6.. 5...................................................6...........................................62 4....................80 Pernyataan goto ........84 Pernyataan break........................................... 3..............................2......................2............................................................................................ Fungsi strlen() ................................41 Operator Pemberi Nilai ........91 6...90 6....5........... Fungsi strcpy() ................ Bab 6 Operasi String 6............................................................7...............1...51 3. Operator Bitwise | ( Or) ............ Pernyataan Nested IF ...................................... Operator Logika NOT ...............................68 Latihan .......................2.....87 5.........................................85 Pernyataan continue .............................. Fungsi strcmp() ...42 Operator Penambah dan Pengurang ...........1................3..82 Pernyataan do ................... 3...........4..40 3.61 4..................81 Pernyataan while ..................................................1..........................66 Operator ?: ..............2........................................while ..............1....1....3. Ekspresi Aritmatika ...... Fungsi strcat() .............6........ Pernyataan Nested For.........................1..................................................... Fungsi strrev() ........ 5.......... Operator Bitwise >> (Shift Right) ............. 3....................56 Latihan ..................................1..........1...................46 3............................................. Operator Bitwise & (And) ... Bab 5 Proses Perulangan 5........4................5...............5...1......... Operator Bitwise ~ (Not) ................53 3....................4................... Operator Aritmatika ........................................................4.43 Operator Relasi... 3....... Pernyataan For ...................89 6..........2........... 5........ Pernyataan IF – ELSE Majemuk ................1....1.................48 3..................1.............. Operator Bitwise << (Shift Left) ................................ 4.............3...............................2...........................Kom iv ..........................Daftar Isi Bab 3 Operator Borland C++ 3.............. 5............................. Operator Bitwise ^ (eXclusive Or) ...........6............2....................1........7..........................1.......... Pernyataan IF ....57 3............................................................................... Operator Logika OR ....................................................... Hierarki Operator Aritmatika ....................... 3.....3....... 5.........2...................................................................................52 3......3...................................................................1.. Operator Logika AND ...... S.5.....................3.51 3.....1....1...6..................................... 4.............................................79 5..........................91 6........1.... Struktur Fungsi.....................1...................6..70 4.ELSE ......................................................89 6........2...86 Latihan ......92 Frieyadie.............55 3........... Bab 4 Operasi Penyeleksian Kondisi 4.... Pernyataan IF ..........39 3...........1.....................................1......5...5..........................................

..4.. 6... v Pemrogramman C++ .... Inisialisasi Array Berdimensi Satu ......120 Pointer Pada Array ...........131 9....................................1.................. 9.............1.... Inisialisasi Array Berdimensi Dua ....5.............95 6.......................5.....2....103 7................................................................5................1......................Daftar Isi 6...... Mengakses Array Berdimesi Satu ..... Struktur Fungsi.................................112 7...............2........................110 Latihan ...1........................... Operator Pointer ..........2.............130 Pengiriman Data Ke Fungsi ...............96 Latihan .....1.........104 7..........2.............. Fungsi atof() ......6............................................126 Parameter Fungsi .133 9............ Prototipe Konversi String . Pengirimam Data Variabel Ke Fungsi....................................93 6........ 9............................1.....125 Prototipe Fungsi....................................................................................................115 8.....2............2..............5..................... Fungsi strupr() ....................................127 9..........................4.........................................2............... Mengakses Array Berdimesi Tiga ...........................................136 Fungsi Inline.......................2......102 Array Berdimensi Dua................105 Array Berdimensi Tiga ..........................133 9.........1.........................107 7..4......... 9.......... 8............... 9............................................................. Variabel Statis.............1..1............................. Variabel Lokal .......2...............6.......134 9.......1.................................3......................................................... 9.93 6................................. Fungsi atoi() .......................................97 Bab 7 Array 7..... 8..................................................1.2.......95 6............................1..................... Array Berdimensi Satu .......................8.................................................100 7............ 9..............................2............................1.......................99 7........117 Deklarasi Pointer Pada Variabel...................137 Fungsi Overloading................ 8............4.1................................2........118 Pointer pada Pointer .......138 Latihan ....................................... Fungsi atoi() ... Pemanggilan dengan Nilai (Call by Value ) ....................... Mengakses Array Berdimesi Dua ...........................................116 Deklarasi Pointer Pada Konstanta........................... Operator Dereference (&) ............ Pemanggilan dengan Referensi (Call by Reference ) .........140 9.....2................................103 7........................ 8........................................................................... Fungsi strlwr() .........123 8....2............2....................................................................................2....3..................7............... Bab 9 Fungsi 9.......128 9........................................................................2...................2...6......................122 Pointer String ...3....................................... 7...........131 9..............6... Variabel Eksternal.............. Pengiriman Data Konstanta Ke Fungsi ....3........... 9............ 7..............................5.1............2............... Operator Dereference (*) ...........................115 8....3..9..........................................................3.........................3..............................................6...................... Inisialisasi Array Berdimensi Tiga .2...2...94 6............. Bab 8 Pointer 8.................2..129 Pernyataan return()........132 Jenis Variabel .

... #include..1......6........158 Structure dengan Function..... Preprocessor Directive...........1.2............1................................. 11................................. #ifdef .....................5....................1......... 11........#else .......................146 10..... Latihan .................... #undef ............#endif ...Kom vi ................................................................. Deklarasi Structure ... #if .........................2.......................................................................................5..1..................152 10.....1.4.................143 10.................................................153 Bab 11 Structure 11.... #if .159 Tugas .........................3........... #i elif.......1...........Daftar Isi Bab 10 Macro 10............................143 10.........3......................................3.................................2.............148 10... S....................................1.................................148 10......1...................155 Nested Structure ..................................................................................1.........................................................#endif ...................................147 10.........4...................................... #define ........... 11..........149 10.........................................7..161 Frieyadie..... 11..........#ifndef ........150 10............................ Pembuatan File Header ............157 Structure dengan Array.........................................

dengan cara : 1 . Word Star dan lain-lain. Bahasa C adalah merupakan bahasa pemrograman tingkat menengah yaitu diantara bahasa tinggat rendah dan tingkat tinggi yang biasa disebut dengan Bahasa Tingkat Tinggi dengan Perintah Assambly. anda bisa Untuk mengaktifkan aplikasi Borland menggunakan banyak cara. Bahasa C untuk pertama kali ditulis oleh Brian W. Mengkompilasi Program ( Compile ) Melakukan Pengujian Program ( Debugging ) Mengaitkan Object dan Library ke Program ( Linking ) Menjalankan Program ( Running ) C++ ver 5. Pada tahun 1980 seorang ahli yang bernama Bjarne Stroustrup mengembangkan beberapa hal dari bahasa C yang dinamakan “C with Classes” yang berganti nama pada tahun 1983 menjadi C++. S.Kom Jika anda menggunakan sistem jaringan pada Windows XP. Ricthie pada tahun 1972. misalnya dBASE. IDE dari Borland C++. anda bisa membuatkan shortcut terlebih dahulu dari server. Kernighan dan Denies M.Bab 1 : Pengenalan Bahasa C++ Pemrogramman C++ Bab 1 : Pengenalan Bahasa C++ 1. 1.02. dapat digunakan untuk : • • • • • Menulis Naskah Program. Bahasa C mempunyai banyak kemampuan yang sering digunakan diantaranya kemampuan untuk membuat perangkat lunak. merupakan Lembar kerja terpadu untuk pengembangan program. diantaranya : • Frieyadie. Penambahan yang terdapat pada C++ ini adalah Object Oriented Programming (OOP). Pengenalan IDE Borland C++ Penjelasan IDE merupakan singkatan dari Integrated Development Environment.2. Sekilas Perkembangan Bahasa C Penjelasan Bahasa C merupakan pengembangan dari bahasa B yang ditulis oleh Ken Thompson pada tahun 1970.1. yang mempunyai tujuan utamanya adalah membantu membuat dan mengelola program yang besar dan kompleks. Bahasa C. pada awalnya dioperasikan diatas sistem operasi UNIX.

IDE Borland C++ 5. sudah dibuatkan shortcut yang anda bisa membukanya dengan cara : .02 IDE pada Borland C++. anda bisa membuat shortcut seperti diatas. Layar Pembuka Borland C++ Gambar 1. kemudian ketikan nama shortcut. yaitu : 2 Pemrogramman C++ .02 klik Boland C++ .1. terbagi menjadi 4 (empat) bagian.Klik tombol Start pilih All Programs Borland C++ 5.2. misalkan Borland C++. Klik kanan pada Desktop Klik New Klik Shorcut b. Biasanya jika sudah terinstall pada komputer anda.exe. Ketikan pada command line :\\BC5\BIN\bcw. seperti gambar dibawah ini. Gambar 1. • Jika anda menggunakan Stand Alone Computer. Atau anda dapat klik tombol Browse untuk mencari alamat dan folder yang menyediakan aplikasi Borland C++. klik tombol Finish untuk selesai.Bab 1 : Pengenalan Bahasa C++ a. c. klik tombol next.Berikut lDE dari Borland C++.

d. S.CPP c.3.Kom 3 . dan dijalankan untuk menampilkan hasilnya serta mempunyai ekstensi . Options.CPP.Bab 1 : Pengenalan Bahasa C++ a. File. Edit. Jika pertama kali anda membuat program. Cara mengaktifkannya : Klik Menu File Klik New Text Edit Gambar 1. Menu Utama ( Menubar ) Menu utama terdiri dari . 1. Membuat File Editor Penjelasan File Editor merupakan File Program yang dapat dikompile. Window dan Help b. Jendela Text Edit Frieyadie. Baris Status Baris dimana menampilkan keterangan-keterangan pada saat anda mengaktifkan menu bar dan sub menu.3. Jendela Message Tempat untuk menampilkan pesan-pesan pada proses kompilasi dan link program. Search Run Compile Debug Project. Jendela Text Edit Tempat untuk mengetikan program dan membuat program. nama file jendela editor adalah NONAME00.

seperti dibawah ini : Gambar 1. diantaranya yaitu : Save Digunakan untuk menyimpan File Program pada jendela yang sedang aktif kedalam disk. Save As Save All 4 Pemrogramman C++ . Hotkey yang ada bisa gunakan untuk menyimpan dengan menekan tombol Ctrl + KS. Digunakan untuk menyimpan semua File Program pada jendela yang sedang aktif kedalam disk. Jendela Save File As Pada Borland C++ 5. Menekan HotKey Ctrl + KS.02 terdapat tiga cara menyimpan file editor. Kik Menu File b. Selanjutnya tampil jendela Save File As.Bab 1 : Pengenalan Bahasa C++ 1. Menyimpan File Editor Penjelasan Setelah selesai mengetikan naskah program yang baru pada jendela Text Edit.4.4. Digunakan untuk menyimpan File Program pada jendela yang sedang aktif kedalam disk dengan nama file yang berbeda. maka selanjutnya disimpan dengan cara : Save a.

Kik Menu Project b. Caranya adalah : Compile a.Bab 1 : Pengenalan Bahasa C++ 1. Caranya adalah : a. Kik Menu Debug Run b. membuat file eksekusi ( . melakukan proses linking. Menjalankan Program Penjelasan Proses Run merupakan suatu proses menterjemahkan program. Menekan HotKey Alt + F9 Selanjutnya tampil kotak dialog Compile. seperti dibawah ini : Frieyadie. Menterjemahkan Program Penjelasan Proses Compile merupakan suatu proses menterjemahkan program dari bahasa manusia kedalam bahasa yang dimengerti oleh komputer yaitu bahasa mesin.5.6.5. Kotak Dialog Compile 1. seperti dibawah ini : Gambar 1. S.Kom 5 .exe ) dan sekaligus menjalankan program. Menekan HotKey Ctrl + F9 Selanjutnya tampil kotak dialog Run.

7.Bab 1 : Pengenalan Bahasa C++ Gambar 1. Contoh Hasil Keluaran Program 1. selanjutnya tampil hasil seperti gambar 1. dengan cara : Klik Menu File Open Selanjutnya tampil Jendela Open. seperti dibawah ini : 6 Pemrogramman C++ . Kotak Dialog Run Setelah proses menterjemahkan program.6. Membuka File Editor Penjelasan Membuka atau memanggil file editor yang sudah pernah dibuat.7 dibawah ini : Gambar 1.7. proses linking.

dengan cara File Exit Frieyadie. seperti dibawah ini : Gambar 1.9.8.8.Kom 7 . Jendela Open 1.Bab 1 : Pengenalan Bahasa C++ Gambar 1.9. Mencetak File Editor Penjelasan Mencetak file program pada jendela yang sedang aktif dengan cara Klik Print Menu File Selanjutnya tampil Jendela Print Option. S.02 Penjelasan Keluar dari Aplikasi Borland C++ 5. Jendela Print Option 1.02. Keluar dari Borland C++ 5.

Model-model memori tersebut adalah : • • • • • • 8 Model Tiny Model Small Model Medium Model Compact Model Large Model Huge Pemrogramman C++ . } Contoh-1 #include <stdio. clrscr(). Struktur Program C++ Penjelasan Struktur program C++. dari program contoh-1 diatas adalah : Gambar 1. #include<file-include> main() { pernyataan.10. printf("%c Merupakan Abjad Yang Ke . char b = 'G'. Hasil Contoh-1 1. setiap fungsi terdiri dari satu atau beberapa pernyataan yang melaksanakan tugas tertentu. a).h> #include <conio.h> main() { int a = 7. sama seperti struktur program C yang terdahulu.10. Model Memori Penjelasan Borland C++.Bab 1 : Pengenalan Bahasa C++ 1. b. } Output yang akan dihasilkan.%d". mempunyai enam model memori untuk program dan data.11. Struktur program C++ terdiri sejumlah blok fungsi.

d. Model Huge Penjelasan Model memori yang menyediakan jumlah memori untuk menyimpan satu jenis data. S.Kom 9 . b. Model Large Penjelasan Model memori yang menyediakan jumlah memori untuk program dan data lebih dari 64 K. Model Compact Penjelasan Model memori yang menyediakan jumlah memori untuk program lebih dari 64 Kb dan data tidak lebih dari 64 K. Model Small Penjelasan Model memori yang menyediakan jumlah memori untuk masing-masing program dan data tidak lebih dari 64 Kb. Frieyadie. d. c. Model Tiny Penjelasan Model memori yang menyediakan jumlah memori untuk program dan data tidak lebih dari 64 Kb.Bab 1 : Pengenalan Bahasa C++ a. c. Model Medium Penjelasan Model memori yang menyediakan jumlah memori untuk program tidak lebih dari 64 Kb dan data tidak lebih dari 64 K.

Bab 1 : Pengenalan Bahasa C++ Lembar ini Sengaja Dikosongkan ( Untuk Catatan Boleh Juga ) 10 Pemrogramman C++ .

yaitu diantaranya adalah : Tabel 2.147.435.d 1.Bab 2 : Pengenalan Model Data.1.7 x 10+308 3.7 x 10-308 s.647 3. Tipe Data Tipe Data Char Int Short Long Float Double Long Double Ukuran Memori 1 Byte 2 Byte 2 Byte 4 Byte 4 Byte 8 Byte 10 Byte Jumlah Digit Jangkauan Nilai -128 s.295 Frieyadie.435. adalah : Unsigned digunakan bila data yang digunakan hanya data yang positif saja. Tabel 2. Perintah Masukan dan Keluaran Pemrogramman C++ Bab 2 : Pengenalan Model Data.648 s. Perintah Masukan dan Keluaran 2.d 32767 -2.d 127 -32768 s. S.d 32767 -32768 s.1.4 x 10-4932 s.967.4 x 10-38 s. Pengenalan Tipe Data Penjelasan Borland C++ memiliki 7 tipe data dasar.147.Kom 11 .1 x 10+4932 5–7 15 – 16 19 Tipe Data Tambahan.4 x 10+38 1.d 3.294.d 1. Tipe Data Tambahan Tipe Data Unsigned Integer Unsigned Character Unsigned Long Integer Jumlah Memori 2 Byte 1 Byte 4 Byte Jangkauan Nilai 0 – 65535 0 – 255 0 – 4.d 2. yang dimiliki oleh Borland C++.2.

2.2. angka atau notasi atau simbol. 3.2. antara lain. a.2. 2.2. Perintah Masukan dan Keluaran 2.3. Data karakter dapat berbentuk abjad ( huruf besar atau kecil ). Contoh : “Virusland”. pada prinsipnya sama seperti Konstanta Floating Point.22 x 103 ) c. yaitu • Konstanta Bilangan • Konstanta Teks 2. Konstanta Teks Dalam hal ini konstanta teks dibagi menjadi dua kelompok. Konstanta Desimal Berpresisi Ganda ( Double Precision ) Konstanta Double Precision. 2. “AMIK BSI”. “Jakarta”. tetapi Konstanta Double Precision mempunyai daya tampung data lebih besar. Secara garis besar konstanta dapat dibagi menjadi dua bagian. a. Data Teks (String). Konstanta Bilangan Dalam hal ini konstanta bilangan dibagi menjadi tiga kelompok. Contoh : ‘Y’ ‘y’ ‘9’ ‘&’ dan lain-lain b. Data Karakter (Character). Contoh : 1. Adalah bilangan yang tidak mengandung titik desimal.2. Data String merupakan rangkaian dari beberapa karakter yang diapit oleh tanda kutip ganda ( “ ). Konstanta Bilangan Bulat.22e3 4. yaitu : • Bentuk Desimal ( cth : 5.57 ) • Bentuk Eksponensial / Bilangan Berpangkat ( cth : 4. Deklarasi Konstanta Penjelasan Bentuk deklarasi konstanta diawali dengan reserved word const. Bentuk penulisannya : const tipe_data nama-konstanta = nilai konstanta. antara lain.1. 12 Pemrogramman C++ . Contoh const int x = 89. Data karakter hanya terdiri dari sebuah karakter saja yang diapit oleh tanda kutip tunggal ( ‘ ). Konstanta Desimal Berpresisi Tunggal ( Floating Point ) Konstanta Floating Point. “Y” dan lain-lain. 100 b. mempunyai bentuk penulisan.Bab 2 : Pengenalan Model Data. Konstanta Penjelasan Konstanta adalah suatu nilai yang sifatnya tetap.

3. seperti : integer atau character dan nama variabel itu sendiri.1. Setiap kali pendeklarasian variabel harus diakhiri oleh tanda titik koma ( . 2.3.Bab 2 : Pengenalan Model Data. Deklarasi Variabel Penjelasan Adalah proses memperkenalkan variabel kepada Borland C++ dan pendeklarasian tersebut bersifat mutlak karena jika tidak diperkenalkan terlebih dulu maka Borland C++ tidak menerima variabel tersebut. Perintah Masukan dan Keluaran 2. Bilangan Desimal Berpresisi Ganda atau Double Precision. Variabel Text • • Character ( Karakter Tunggal ) String ( Untuk Rangkaian Karakter ) 2.3. ). Dalam pemberian nama variabel. Tipe Variabel TIPE VARIABEL Integer Floating Point Double Precision Karakter Unsigned Integer Unsigned Character Long Integer Unsigned Long Integer Bentuk penulisannya : SIMBOL DEKLARASI int float double char unsigned int unsigned char long int unsigned long int Tipe data nama variabel.3. mempunyai ketentuan-ketentuan antara lain .3. S. Variabel Penjelasan Adalah suatu tempat menampung data atau konstanta dimemori yang mempunyai nilai atau data yang dapat berubah-ubah selama proses program.Kom 13 . 2. Tabel 2.3.2. Frieyadie. Variabel Numerik Variabel numerik ini dibagi menjadi menjadi 3 (tiga) macam : • Bilangan Bulat • Bilangan Desimal Berpresisi Tunggal atau Floating Point. • Tidak boleh ada sepasi ( cth : gaji bersih ) dan dapat menggunakan tanda garis bawah ( _ ) sebagai penghubung (cth : gaji_bersih). Deklarasi Variabel ini meliputi tipe variabel. • Tidak boleh diawali oleh angka dan menggunakan operator aritmatika.

4. 2.%d”. char grade. int nilai. Perintah Masukan dan Keluaran Contoh Deklarasi char nama_mahasiswa.Bab 2 : Pengenalan Model Data. argumen-2. Penentu format dipakai untuk memberi tahu kompiler mengenai jenis data yang dipakai dan akan ditampilkan.2). Perintah Keluaran Penjelasan Perintah standar output yang disediakan oleh Borland C++.4. argumen-1.1 printf() Penjelasan Fungsi printf() merupakan fungsi keluaran yang paling umum digunakan untuk menampilkan informasi kelayar. Argumen ini dapat berupa variabel. konstanta dan ungkapan. float rata_rata .4. String-Kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta penentu format. Penentu Format printf() TIPE DATA Integer Floating Point Bentuk Desimal Bentuk Berpangkat Bentuk Desimal dan Pangkat Double Precision Character String Unsigned Integer Long Integer Long Unsigned Integer Unsigned Hexadecimal Integer Unsigned Octal Integer Penentu Format Untuk printf() %d %f %e %g %lf %c %s %u %ld %lu %x %o Bentuk Penulisan printf(“%c merupakan abjad yang ke . diantaranya adalah : • printf() • puts() • putchar() • cout() 2. Tabel 2. printf("string-kontrol". …). 14 Pemrogramman C++ .’b’.

b = 243.Bab 2 : Pengenalan Model Data.50. tampilan yang tampak biasanya kurang bagus.21. printf("Bilangan A = %f \n".h> #include <conio.%d". S. a). Berikut bentuk penulisannya : Contoh-2 #include <stdio. Hal tersebut dapat diatur lebar field-nya dan jumlah desimal yang ingin dicetak.h> main() { int a = 7. } Output yang akan dihasilkan. a). b). dari program contoh-1 diatas adalah : Gambar 2. clrscr(). clrscr(). Perintah Masukan dan Keluaran Contoh-1 #include <stdio.h> main() { float a = 7. printf("Bilangan B = %f".1. Penggunaan Penentu Lebar Field Penjelasan Bila ingin mencetak atau menampilkan data yang bertipe data float atau pecahan.h> #include <conio. b. jika tidak menggunakan panentu lebar field adalah Frieyadie.Kom 15 . Hasil Contoh-1 a. } Output yang akan dihasilkan. char b = 'G'. printf("%c Merupakan Abjad Yang Ke .

Penggunaan Escape Sequences. Hasil Contoh-3 b. Escape Sequence ESCAPE SEQUENCES \b \f \n \r \t 16 PENGERTIAN Backspace Formfeed ( Pindah Halaman ) NewLine ( Baris Baru ) Carriage Return Tab ( default = 7 karakter ) Pemrogramman C++ . b).h> #include <conio.1f \n". printf("Bilangan A = %4.50.5. b = 243.21.3. printf("Bilangan B = %4. Beberapa Escape Sequences lainnya antara lain : Tabel 2.2. Hasil Contoh-2 Contoh-3 #include <stdio.1f". Penjelasan Escape Sequences merupakan suatu karakter khusus yang menggunakan notasi “ \ ” (back slash) jika karakter terdapat notasi “\” ini sebagai karakter “escape” ( menghindar). clrscr().Bab 2 : Pengenalan Model Data.h> main() { float a = 7. jika menggunakan panentu lebar field adalah Gambar 2. } Output yang akan dihasilkan. a). Perintah Masukan dan Keluaran Gambar 2.

21.2f ".2f\t %8. Perintah Masukan dan Keluaran \' \" \\ \xaa \aaa Tanda kutip tunggal ( ' ) Tanda Kutip Ganda ( " ) Backslash Kode ASCII dalam hexadecimal. Hasil Contoh-3 2. d. b.41.4.4. c). f = 3. printf("%8.h> main() { float a = 7. c = 3. S.2f ".2f\t%8. } Output yang akan dihasilkan. e. e = 47.2f\t%8. yaitu digunakan untuk mencetak string ke layar. karena fungsi ini khusus untuk tipe data string.Bab 2 : Pengenalan Model Data. Frieyadie.50. float d = 17. puts() Penjelasan Perintah puts() sebenarnya sama dengan printf(). f). Perbedaaan puts() dengan printf() printf() Harus menentukan tipe data untuk data string.2f\t %8.1. printf("\n%8. a. dari program contoh-4 diatas adalah : Gambar 2.h> #include <conio.6. Perbedaan antara printf() dengan puts() adalah : Tabel 2. yaitu %s Untuk mencetak pindah memerlukan notasi ‘ \n ‘ baris. Untuk mencetak pindah baris tidak perlu notasi ‘ \n ‘ . puts() berasal dari kata PUT STRING. b = 43.50.Kom 17 . puts() Tidak Perlu penentu tipe data string. ( aa menunjukkan angka ASCII ybs ) Kode ASCII dalam octal. (aaa menunjukkan angka ASCII ybs ) Contoh-4 #include <stdio. karena sudah dibeikan secara otomatis.21.2. clrscr().

h> main() { char a[4] = "BSI". putchar('B'). putchar('I'). "). puts("Saya Kuliah di. dari program contoh-5 diatas adalah : Gambar 2. putchar('S'). clrscr(). dari program contoh-6 diatas adalah : Contoh-6 Gambar 2.3.4.h> main() { clrscr().Bab 2 : Pengenalan Model Data.h> #include <conio.5.h> #include <conio. #include <stdio. Hasil Contoh-6 18 Pemrogramman C++ . } Output yang akan dihasilkan. putchar() Penjelasan Perintah putchar() digunakan untuk menampilkan sebuah karakter ke layar.6. puts(a). } Output yang akan dihasilkan. Perintah Masukan dan Keluaran Contoh-5 #include <stdio. Penampilan karakter tidak diakhiri dengan pindah baris. Hasil Contoh-5 2.

Bab 2 : Pengenalan Model Data. b=8. Hasil Contoh-6 2. diantaranya : Frieyadie. a=7.h> #include <conio. untuk mengguakan manipulator ini file header yang harus disertakan file header iomanip. b.h . c=0.7. c.4. clrscr().4. cout<<"Masukan Nilai A : "<<a. • • • • • endl end dec() hex() oct() • • • • • setbase() setw() setfill() setprecision() setiosflags() Berikut akan dibahas beberapa fungsi manipulator.5.h> #include <iostream.h . Untuk menggunakan fungsi cout() ini. c = a + b.4. Perintah Masukan dan Keluaran 2. cout<<"Masukan Nilai B : "<<b. } Output yang akan dihasilkan. antara lain. Ada beberapa fungsi manipulator yang disediakan oleh Borland C++. dari program contoh-7 diatas adalah : Contoh-7 Gambar 2. cout<<"Masukan Nilai C : "<<c. S.4.Kom 19 . harus menyertakan file header iostream. Fungsi Manipulator Penjelasan Manipulator pada umumnya digunakan untuk mengatur tampilan layar. cout() Penjelasan Fungsi cout() merupakan sebuah objeck didalam C++ digunakan untuk menampilkan suatu data kelayar. #include <stdio.h> main() { float a. getch().5.

h> # include <conio. File header yang harus disertakan file header iostream. b.4. } Output yang akan dihasilkan. endl Penjelasan endl merupakan suatu fungsi manipulator yang digunakan untuk menyisipkan karakter NewLine atau mengatur pindah baris. c. File header yang harus disertakan file header iostream.h> main() { int a. b=8. cout<<"Masukan Nilai A : "<<a<<endl.Bab 2 : Pengenalan Model Data. clrscr().h . Fungsi ini sangat berguna untuk piranti keluaran berupa file di disk. c = a + b. getch(). ends Penjelasan ends merupakan suatu fungsi manipulator yang digunakan untuk menambah karakter null ( nilai ASCII NOL ) kederetan suatu karakter.5.8. dari program contoh-8 diatas adalah : Contoh-8 Gambar 2. Hasil Contoh-8 b. c. a=7. Perintah Masukan dan Keluaran a. # include <stdio. b.h> # include <conio.h> main() { float a. 20 Pemrogramman C++ Contoh-9 . # include <stdio.h . cout<<"Masukan Nilai B : "<<b<<endl. cout<<"Masukan Nilai C : "<<c<<endl.h> # include <iostream. c=0 clrscr(). Fungsi ini akan berguna untuk mengirim sejumlah karakter kefile didisk atau modem dan mengakhirinya dengan karakter NULL. d..h> # include <iostream.

Hasil Contoh-10 Frieyadie.h> Contoh-10 void main() { int nilai = 10.Kom 21 . } Output yang akan dihasilkan. getch().h . a % b. oct dan hex merupakan suatu fungsi manipulator yang digunakan untuk konversi data dalam bentuk desimal.Bab 2 : Pengenalan Model Data. clrscr(). cout<<"Hasil dari C = A % B adalah "<<c<<ends. a * b. dari program contoh-9 diatas adalah : Gambar 2. File header yang harus disertakan file header iomanip.9. dari program contoh-10 diatas adalah : Gambar 2. Perintah Masukan dan Keluaran a b c d = = = = 6. oct dan hex Penjelasan dec.h> <iomanip. } Output yang akan dihasilkan. # # # # include include include include <stdio. cout<<"Nilai ke Hexadesimal = "<<hex<<nilai<<endl. dec.h> <conio. oktal dan hexadesimal.10. Hasil Contoh-9 c. 5. S.h> <iostream. cout<<"Hasil dari D = A * B adalah "<<d<<ends. cout<<"Nilai ke Desimal = "<<dec<<nilai<<endl. cout<<"Nilai = "<<nilai<<endl. getch(). cout<<"Nilai ke Octal = "<<oct<<nilai<<endl.

Bab 2 : Pengenalan Model Data, Perintah Masukan dan Keluaran

d. setprecision ()
Penjelasan setprecision() merupakan suatu fungsi manipulator yang digunakan untuk mengatur jumlah digit desimal yang ingin ditampilkan. File header yang harus disertakan file header iomanip.h . # # # # include include include include <stdio.h> <conio.h> <iostream.h> <iomanip.h>

Contoh-11

void main() { float a, b, c; a = 25.77; b = 23.45; clrscr(); c = a * b; cout<<setiosflags(ios::fixed); cout<<setprecision(1)<<c<<endl; cout<<setprecision(2)<<c<<endl; cout<<setprecision(3)<<c<<endl; cout<<setprecision(4)<<c<<endl; cout<<setprecision(5)<<c<<endl; getch(); } Output yang akan dihasilkan, dari program contoh-11 diatas adalah :

Gambar 2.11. Hasil Contoh-11

e. setbase()
Penjelasan setbase() merupakan suatu fungsi manipulator yang digunakan untuk konversi bilangan Octal, Decimal dan Hexadecimal. File header yang harus disertakan file header iomanip.h . Bentuk penulisannya : setbase(base bilangan); Base bilangan merupakan base dari masing-masing bilangan, yaitu : • Octal = basis 8 • Decimal = basis 10 22 Pemrogramman C++

Bab 2 : Pengenalan Model Data, Perintah Masukan dan Keluaran • Contoh-12

Hexadecimal = basis 16

//Penggunaan Manipulator setbase() # # # # include include include include <stdio.h> <conio.h> <iostream.h> <iomanip.h>

main() { int a = 250; clrscr(); cout<<"Penggunan Manipulator setbase()"<<"\n\n"; cout<<"Decimal Octal Hexadecimal"<<endl; cout<<"----------------------------"<<"\n"; for(a=250;a<=260;a++) { cout<<setbase(10)<<a<<" "; cout<<setbase(8)<<a<<" "; cout<<setbase(16)<<a<<endl; } getche(); } Output yang akan dihasilkan, dari program contoh-12 diatas adalah :

Gambar 2.12. Hasil Contoh-12

f. setw()
Penjelasan setw() merupakan suatu fungsi manipulator yang digunakan untuk mengatur lebar tampilan dilayar dari suatu nilai variabel. File header yang harus disertakan file header iomanip.h . Bentuk penulisannya : setw(int n); n = merupakan nilai lebar tampilan data, integer. Frieyadie, S.Kom 23

Bab 2 : Pengenalan Model Data, Perintah Masukan dan Keluaran

Contoh-13

// Penggunaan Manipulator setw() # include <stdio.h> # include <conio.h> # include <iostream.h> # include <iomanip.h> main() { int a; clrscr(); cout<<"Penggunan Manipulator setw()"<<"\n\n"; cout<<"-------------------------------"<<"\n"; for(a=1;a<=15;a++) { cout<<setw(a)<<a<<endl; } cout<<"-------------------------------"<<"\n"; getche(); } Output yang akan dihasilkan, dari program contoh-13 diatas adalah :

Gambar 2.13. Hasil Contoh-13

g. setfill()
Penjelasan setfill() merupakan suatu fungsi manipulator yang digunakan untuk manampilkan suatu karakter yang ditelakan didepan nilai yang diatur oleh fungsi setw(). File header yang harus disertakan file header iomanip.h . Bentuk penulisannya : setfill(charakter); Contoh-14 //--> penggunaan setfill dan setw() # include <stdio.h> # include <conio.h> # include <iostream.h> Pemrogramman C++

24

. antara lain.a++) { cout<<setfill('-').Bab 2 : Pengenalan Model Data.Kom 25 . Ada beberapa format keluaran untuk fungsi setiosflags(). cout<<setw(a)<<a<<endl. for(a=1. Tanda Format Perataan Kiri dan Kanan Penjelasan Tedapat dua buah tanda format yang digunakan untuk perataan kiri dan kanan. cout<<"Penggunan Manipulator setfill()"<<"\n\n". Fungsi ini biasa pada fungsi cout(). Perintah Masukan dan Keluaran # include <iomanip. dari program contoh-14 diatas adalah : Gambar 2. Hasil Contoh-14 h. pengaturan terhadap lebar variabel untuk perataan kiri dan kanan ini melalui fungsi setw().a<=15.h> main() { int a. } Output yang akan dihasilkan.14. } getche(). cout<<"-------------------------------"<<"\n". setiosflags () Penjelasan Fungsi setiosflags() merupakan suatu fungsi manipulator yang digunakan untuk mengatur sejumlah format keluaran data.h . clrscr(). S. 1. file header yang harus disertakan file header iomanip. ios::left digunakan untuk mengatur perataan sebelah kiri ios::right digunakan untuk mengatur perataan sebelah kanan Frieyadie.

h> # include <iomanip. cout<<"Penggunaan ios::left dan ios::right\n\n".h> # include <conio. Tanda Format Keluaran Notasi Konversi Penjelasan Tanda format yang digunakan untuk keluaran Notasi. cout<<endl. ios::fixed digunakan untuk mengatur keluaran dalam bentuk notasi desimal. b = 56.45 adalah ". yaitu : ios::scientific digunakan untuk mengatur keluaran dalam bentuk notasi eksponensial. Hasil Contoh-15 2.15.h> main() { int a = 75. getche(). Perintah Masukan dan Keluaran Contoh-15 //tanda format ios::left dan ios::right # include <stdio. cout<<"Penggunaan ios::scientific dan ios::fixed\n". cout<<setiosflags(ios::right)<<setw(10)<<b.h> # include <iomanip. cout<<"Rata Sebelah Kiri = ". Contoh-16 //tanda format ios::scientific dan ios::fixed # include <stdio.h> # include <iostream. cout<<setiosflags(ios::left)<<setw(10)<<a. cout<<"Rata Sebelah Kanan = ". } Output yang akan dihasilkan. cout<<setiosflags(ios::right)<<setw(10)<<a. dari program contoh-15 diatas adalah : Gambar 2. Pemrogramman C++ 26 . cout<<setiosflags(ios::left)<<setw(10)<<b.Bab 2 : Pengenalan Model Data.h> main() { clrscr(). cout<<"Hasil ios::fixed dari 56. cout<<"\nHasil ios::scientific dari 75.65 adalah ".45<<endl.h> # include <conio. cout<<setiosflags(ios::scientific)<<75. clrscr().h> # include <iostream.

S.h> main() { clrscr(). ios::hex # # # # include include include include <stdio. } Output yang akan dihasilkan. digunakan untuk mengatur keluaran dalam konversi basis oktal. cout<<"\n\n".Kom 27 .h> <iomanip.h> <iostream. dari program contoh-17 diatas adalah : Frieyadie.h> <conio. } Output yang akan dihasilkan. cout<<"Bilangan Octal dari 10 = ".16. digunakan untuk mengatur keluaran dalam konversi basis heksadesimal. cout<<setiosflags(ios::oct)<<10<<endl. dari program contoh-16 diatas adalah : Gambar 2.Bab 2 : Pengenalan Model Data. getche(). cout<<"Bilangan Decimal dar 75 = ". cout<<"Bilangan Hexadecimal dari 15 = " cout<<setiosflags(ios::hex)<<15. Hasil Contoh-16 3. ios::oct ios::hex Contoh-17 //tanda format ios::dec. yaitu : ios::dec digunakan untuk mengatur keluaran dalam konversi basis desimal.65. Tanda Format Konversi Dec. ios::oct. Octal dan Hexadecimal. cout<<setiosflags(ios::dec)<<75<<endl. Perintah Masukan dan Keluaran cout<<setiosflags(ios::fixed)<<56. getche(). Oct dan Hex Penjelasan Terdapat tiga macam tanda format yang digunakan untuk konversi keluaran dalam basis Decimal.

cout<<"-------------------------\n". cout<<"Penggunaan ios::uppercase\n". a<=15. cout<<setiosflags(ios::uppercase)<<hex<<a<<endl.a+5). Tanda Format Manipulasi Huruf Hexadecimal Penjelasan Untuk keperluan memanipulasi atau mengubah huruf pada notasi hexadecimal dengan menggunakan tanda format : ios::uppercase digunakan untuk mengubah huruf pada notasi huruf hexadecimal. cout<<"-------------------------\n".h> main() { int a. } getche().Bab 2 : Pengenalan Model Data. Hasil Contoh-17 4. a++) { gotoxy(15.17.h> # include <iomanip. Perintah Masukan dan Keluaran Gambar 2. } Output yang akan dihasilkan. a++) cout<<hex<<a<<endl. for (a=1. Contoh-18 //tanda format ios::uppercase # include <stdio. a<=15. cout<<"Konversi Konversi \n". clrscr(). cout<<"Tanpa Dengan \n".h> # include <conio. dari program contoh-18 diatas adalah : 28 Pemrogramman C++ . for (a=1.h> # include <iostream.

cout<<"Penggunaan ios::showbase\n". cout<<dec<<a<<endl.18 Hasil Contoh-18 5.h> <conio. cout<<"----------------------------\n". Perintah Masukan dan Keluaran Gambar 2. S. Contoh-19 //tanda format ios::showbase # # # # include include include include <stdio.a+5). cout<<"Decimal Hexadecimal Oktal \n".h> <iomanip. Tanda Format Keluaran Dasar Bilangan Hexadecimal dan Octal Penjelasan Untuk keperluan menampilkan dasar bilangan Hexadecimal dan Oktal dengan menggunakan tanda format : ios::showbase digunakan untuk menampilkan tanda 0x (nolx) diawal pada tampilan bilangan hexadecimal dan 0 (nol) diawal pada tampilan bilangan decimal.h> main() { int a. cout<<setiosflags(ios::showbase).Kom 29 . a<=15. clrscr(). Frieyadie. a++) { gotoxy(4. cout<<"----------------------------\n".h> <iostream.Bab 2 : Pengenalan Model Data. for (a=1.

a++) { gotoxy(15. getche(). cout<<hex<<a<<endl.h> main() { double a = 78. Pemrogramman C++ 30 . } cout<<"----------------------------\n".Bab 2 : Pengenalan Model Data. a<=15. Hasil Contoh-19 6.a+5).19. Perintah Masukan dan Keluaran } for (a=1.h> # include <conio.a+5).h> # include <iostream. dari program contoh-19 diatas adalah : Gambar 2. } for (a=1. Contoh-20 //tanda format ios::showpoint # include <stdio. } Output yang akan dihasilkan. a++) { gotoxy(25. Tanda Format Menampilkan Titik Desimal Penjelasan Untuk keperluan menampilkan titik desimal dengan menggunakan tanda format : ios::showpoint digunakan untuk menampilkan titik desimal pada bilangan yang tidak mempunyai titik desimal pada tipe data float atau double. cout<<oct<<a<<endl. a<=15.h> # include <iomanip.

cout<<"\n\n".h> # include <conio. b = -9. Perintah Masukan dan Keluaran clrscr(). cout<<"Nilai a = "<<a<<" Nilai b = "<<b<<endl.h> # include <iomanip.17. cout<<setiosflags(ios::showpos). //-> dengan tanda format ios::showpoint cout<<"Dengan tanda format ios::showpoint"<<endl.h> # include <iostream. } Output yang akan dihasilkan.Kom 31 . getche(). Tanda Format Menampilkan Simbol Plus ( + ) Penjelasan Untuk keperluan menampilkan simbol Plus ( + ) pada bilangan genap dengan menggunakan tanda format : ios::showpos digunakan untuk menampilkan simbol plus (+) pada variabel yang memiliki nilai bilangan positif. clrscr(). cout<<"Variabel a = "<<a<<endl. Hasil Contoh-17 7. getche(). dari program contoh-17 diatas adalah : Gambar 2.h> main() { int a = 8. cout<<"Nilai a = "<<a<<" Nilai b = "<<b<<endl.Bab 2 : Pengenalan Model Data. cout<<setiosflags(ios::showpoint). Contoh-21 //tanda format ios::showpos # include <stdio. } Output yang akan dihasilkan. S. cout<<"Tanpa Menggunakan ios::showpos"<<"\n\n". cout<<"Variabel a = "<<a<<"\n\n". cout<<"Dengan Menggunakan ios::showpos"<<"\n\n". dari program contoh-21 diatas adalah : Frieyadie. //-> tanpa tanda format ios::showpoint cout<<"Tanpa tanda format ios::showpoint"<<endl.

&nama-variabel). Keterangan simbol & merupkan pointer yang digunakan untuk menunjuk kealamat variabel memori yang dituju.7.5.21. scanf() Penjelasan Fungsi scanf() digunakan untuk memasukkan berbagai jenis data. diantaranya adalah : • • • scanf() gets () cin() • • getch() getche() 2. Perintah Masukan Penjelasan Perintah standar input yang disediakan oleh Borland C++.1. Bentuk Umum dari fungsi ini adalah : scanf("penentu format".5. Perintah Masukan dan Keluaran Gambar 2. Penentu Format scanf() TIPE DATA Integer Floating Point Bentuk Desimal Bentuk Berpangkat Double Precision Character String Unsigned Integer Long Integer Long Unsigned Integer Unsigned Hexadecimal Integer Unsigned Octal Integer 32 Penentu Format Untuk scanf() %d %e atau %f %e atau %f %lf %c %s %u %ld %lu %x %o Pemrogramman C++ . Tabel 2.Bab 2 : Pengenalan Model Data. Hasil Contoh-21 2.

Kom 33 . dari program contoh-22 diatas adalah : Gambar 2. c = a + b. c = 0 .h> main() { int a.5.h> # include <conio.8. scanf("%d". Bentuk Umum dari fungsi ini adalah : gets(nama-variabel-array). char nm2[20].h> main() { char nm1[20]. Perbedaan scanf() dengan gets() scanf() Tidak dapat menerima string yang mengandung spasi atau tab dan dianggap sebagai data terpisah gets() Dapat menerima string yang mengandung spasi atau tab dan masing dianggap sebagai satu kesatuan data.2. } Output yang akan dihasilkan. b. gets() Penjelasan Fungsi gets() digunakan untuk memasukkan data string. printf("Hasil Penjumlahan = %d". printf("Masukan Nilai A = "). Perintah Masukan dan Keluaran Contoh-22 # include <stdio. Frieyadie.h> # include <conio.Bab 2 : Pengenalan Model Data. Hasil Contoh-22 2. Perbedaan antara scanf() dengan gets() adalah : Tabel 2. S. Contoh-23 # include <stdio. clrscr(). scanf("%d".&b).&a). printf("Masukan Nilai B = ").c).22.

%s".h> main() { float a.").2 = ").3. puts("Senang Berkenalan Dangan Anda . harus menyertakan file header iostream. dari program contoh-23 diatas adalah : Gambar 2..&nm2). } Output yang akan dihasilkan.. cin () Penjelasan Fungsi cin() merupakan sebuah objeck didalam C++ digunakan untuk memasukkan suatu data.5. Untuk menggunakan fungsi cin() ini.. printf("Masukan nama ke . scanf("%s".h> # include <iostream. gets(nm1). printf("Senang Berkenalan Dangan Anda . clrscr(). Hasil Contoh-23 2. puts(nm1). puts("Masukan nama ke .. cin>>a.1 = ").h> # include <conio. printf("\n\n"). # include <stdio.%s". printf("Senang Berkenalan Dangan Anda .").23. printf("\n\n"). puts("Senang Berkenalan Dengan Anda . c. 34 Pemrogramman C++ Contoh-24 . cout<<"Masukan Nilai A : ".. puts("Senang Berkenalan Dangan Anda . Perintah Masukan dan Keluaran clrscr(). puts(nm2).Bab 2 : Pengenalan Model Data. b. nm2)."). nm1).h . puts(nm1).

h> # include <conio. clrscr().Bab 2 : Pengenalan Model Data. # include <stdio.4.25. dari program contoh-15 diatas adalah : Contoh-25 Gambar 2. cout<<"Nilai C : "<<c<<endl. getch () Penjelasan Fungsi getch() (get character and echo) dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER.h> main() { char kar. cin>>b. kar). Hasil Contoh-25 Frieyadie. dari program contoh-24 diatas adalah : Gambar 2. printf("\nTadi Anda Memasukan karakter %c". dan karakter yang dimasukan tidak akan ditampilkan di layar. Perintah Masukan dan Keluaran cout<<"Masukan Nilai B : ". } Output yang akan dihasilkan.5. kar = getch(). } Output yang akan dihasilkan. getch().24. S.Kom 35 . File header yang harus disertakan adalah conio. c = a + b.h. printf("Masukan Sebuah Karakter Bebas = "). Hasil Contoh-24 2.

Karena fungsi getch() merupakan fungsi masukkan. kar). Buatlah program untuk menghitung nilai rata-rata dari seorang siswa.16. dengan ketentuan sebagai berikut : • Nama Siswa. getch (). jadi sebelum program keluar harus memasukan satu buah karakter. clrscr(). Nilai Pertandingan I. 2.Bab 2 : Pengenalan Model Data. File header yang harus disertakan adalah conio. II dan III dibagi dengan 3. • Tampilan yang diinginkan sebagai berikut : 36 Pemrogramman C++ . Nilai Pertandingan III diinput.5. Perintah Masukan dan Keluaran 2. • Nilai Rata-rata merupakan hasil dari Nilai Pertandingan I. printf("\nTadi Anda Memasukan karakter %c".h. # include <stdio.h> # include <conio. getche () Penjelasan Fungsi getche()dipakai untuk membaca sebuah karakter dengan sifat karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER.h> main() { char kar. kar = getche().5. Nilai Pertandingan II. printf("Masukan Sebuah Karakter Bebas = "). Hasil Contoh-16 Selain itu kedua fungsi ini dapat digunakan untuk menahan agar tidak langsung balik kembali kedalam listing program dan hasil dari program yang di eksekusi langsung dapat dilihat. dan karakter yang dimasukan ditampilkan di layar.6. dari program contoh-26 diatas adalah : Contoh-26 Gambar 2. Latihan 1. } Output yang akan dihasilkan.

<hasil hasil perlombaan yang diikutinya..Kom 37 .. < diinput > Layar Keluaran Siswa yang bernama . < diinput > Nilai Pertandingan I : . Buatlah program untuk menghitung nilai akhir seorang siswa dari kursus yang diikutinya. < hasil proses > Nilai Ujian * 50% : . S.... • Nilai Murni Tugas = Nilai Tugas dikalikan dengan 30% • Nilai Murni Ujian = Nilai Ujian dikalikan dengan 50% • Nilai Akhir adalah Nilai Murni Keaktifan + Nilai Murni Tugas + Nilai Murni Ujian • Tampilan yang diinginkan sebagai berikut : Layar Masukkan PROGRAM HITUNG NILAI AKHIR Nama Siswa : .. Perintah Masukan dan Keluaran Layar Masukkan PROGRAM HITUNG NILAI RATA-RATA Nama Siswa : ... < diinput > Nilai Pertandingan III : .. Nilai Keaktifan Nilai Tugas Nilai Ujian < : : : diinput > ... adalah • Nilai Murni Keaktifan = Nilai Keaktifaan dikalikan dengan 20%. < diinput > . Nilai Keaktifan. <hasil proses> Frieyadie. proses> dari 2.Bab 2 : Pengenalan Model Data... <hasil proses> memperoleh nilai akhir sebesar ...... < diinput > Nilai Pertandingan II : ...<tampil data> Memperoleh nilai rata-rata ..... Dengan ketentuan sebagai berikut : • Nama Siswa... < diinput > ... < hasil proses > Jadi Siswa yang bernama . Nilai Tugas dan Nilai Ujian diinput.. < hasil proses > Nilai Tugas * 30% : . • Proses yang dilakukan untuk mendapatkan nilai murni dari masing-masing nilai.. Nilai Keaktifan * 20% : . < diinput > Layar Keluaran Siswa yang bernama …… Dengan Nilai Persentasi Yang dihasilkan.

Perintah Masukan dan Keluaran Lembar ini Sengaja Dikosongkan ( Untuk Catatan Boleh Juga ) 38 Pemrogramman C++ .Bab 2 : Pengenalan Model Data.

1. Operator mempunyai sifat sebagai berikut : • Unary Sifat Unary pada operator adalah hanya melibatkan sebuah operand pada suatu operasi aritmatik Contoh : -5 Binary Sifat Binary pada operator adalah melibatkan dua buah operand pada suatu operasi aritmatik Contoh : 4 + 8 Ternary Sifat Tenary pada operator adalah melibatkan tiga buah operand pada suatu operasi aritmatik Contoh : (10 % 3) + 4 + 2 • • 3. S. seperti penjumlahan. Operator Aritmatika Operator * / % + − Keterangan Perkalian Pembagian Sisa Pembagian Penjumlahan Pengurangan Contoh 4 * 5 8 / 2 5 % 2 7 + 2 6 − 2 Operator yang tergolong sebagai operator Unary.Bab 3: Operator Borland C++ Pemrogramman C++ Bab 3 : Operator Borland C++ Penjelasan Operator merupakan simbol atau karakter yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi atau manipulasi. adalah : Frieyadie. Operator Aritmatika Penjelasan Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah : Tabel 3.1.Kom 39 . pengurangan dan lain-lain.

c = 0. cin>>a. } getch().2. cout<<" Hasil dari D = A * B = "<<d<<endl. cout<<"Masukan Nilai A : ". dari program contoh-1 diatas adalah : Gambar 3. cout<<"Masukan Nilai B : ". b.1. c = a % b. cin>>b. Output yang akan dihasilkan.h> main() { int a.1. d = 0. d = a * b. dikenal dengan sebutan LValue (Left Value) Ekspresi Aritmatika dikenal dengan sebutan RValue (Right Value) Pemrogramman C++ .1. clrscr(). Operator Unary Operator + − Contoh-1 Keterangan Tanda Plus Tanda Minus Contoh −4 +6 #include <stdio. Ekspresi Aritmatika Bentuk penulisan ekspresi aritmatika dikaitkan dengan pernyataan pemberi nilai.h> #include <iostream. Bentuk Umum : • • 40 Variabel. cout<<" Hasil dari C = A % B = "<<c<<endl. Hasil Contoh-1 3.h> #include <conio.Modul 3: Operator Borland C++ Tabel 3.

Urutan operator aritmatika sebagai berikut : Tabel.1. yang didepan didahulukan Contoh A=8+2*3/6 Langkah perhitungannya : A=8+6/6 A=8+1 A=9 (6/6=1) Tingkatan operator ini dapat diabaikan dengan penggunaan tanda kurung “(“ dan “)”.Kom 41 . Penjelasan Didalam suatu ekspresi aritmatika.2. 3. variabel lain maupun suatu ekspresi atau rumus aritmatika. selalu menjumpai beberapa operator aritmatika yang berbeda secara bersamaan. peng gunaannya tergantung letak. Bila LValue bukan berupa variabel. yang didepan didahulukan Sisa Pembagian Tingkatan operator sama. 3. S. Hierarki Operator Aritmatika. Contoh : A = (8 + 2) * 3 / 6 Langkah perhitungannya : A = 10 * 3 / 6 A = 30 / 6 A=5 Frieyadie.3.Bab 3: Operator Borland C++ • Tanda “ = “. peng gunaannya tergantung letak. Tabel Hierarki Operator Aritmatika Operator * atau / % + atau Keterangan Tingkatan operator sama. dikenal dengan sebagai Operator Pemberi Nilai (Assignment Operator). maka akan tampil pesan kesalahan LValue required in function … RValue dapat berupa konstanta. LValue harus selalu berupa variabel tunggal.

clrscr(). cout<<" Hasil dari B = "<<b<<endl. Ada beberapa operator pemberi nilai aritmatka diantaranya : Tabel. b = (8 + 2) * 3 / 6.Modul 3: Operator Borland C++ Contoh-2 #include <stdio. 3. } Output yang akan dihasilkan.4.h> #include <conio.h> main() { int a. Hasil Contoh-2 3. getch().2. Operator Pemberi Nilai Aritmatika Penjelasan Sebelumnya kita telah mengenal operator pemberi nilai ( assignment operator ) yaitu tanda “ = “. cout<<" Hasil dari A = "<<a<<endl. b.2. dari program contoh-2 diatas adalah : Gambar 3.h> #include <iostream. Sebagai contoh penggunaan operator pemberi nilai : A = A + 1 Dari penulisan ekspresi diatas. Borland C++ dapat menyederhanakan menjadi : A += 1 Notasi “ += “ ini dikenal dengan operator pemberi nilai aritmatika. Tabel Operator Pemberi Nilai Aritmatika Operator *= /= %= += -= Keterangan Perkalian Pembagian Sisa Pembagian Penjumlahan Pengurangan 42 Pemrogramman C++ . a = 8 + 2 * 3 / 6.

Tabel Operator Penambah dan Pengurang Operator ++ -Keterangan Penambahan Pengurangan A = A + 1 atau A = A .5. • Contoh-3 /* Penggunaan Notasi Didepan Variabel*/ #include <stdio.atau --A Kedua bentuk penulisan notasi ini mempunyai arti yang berbeda. Frieyadie. • Jika diletakan didepan variabel. = %d".3. Tabel.Bab 3: Operator Borland C++ 3.“ dapat diletakan didepan atau di belakang variabel. = %d". maka proses penambahan atau pengurangan akan dilakukan sesaat sebelum atau langsung pada saat menjumpai ekspresi ini. sehingga nilai variabel tadi akan langsung berubah begitu ekspresi ini ditemukan.h> #include <conio. printf("Nilai A printf("\nNilai printf("\nNilai printf("\nNilai printf("\nNilai printf("\nNilai } getch(). = %d". = %d". = ++A A B --B B %d". Operator Penambah dan Pengurang Penjelasan Masih berkaitan dengan operator pemberi nilai. S. sedangkan Jika diletakan dibelakang variabel. masih dapat disederhanakan menjadi A ++ atau A-Notasi “ ++ “ atau “ -.Kom 43 . Dari contoh penulisan operator pemberi nilai sebagai penyederhanaannya dapat digunakan operator penambah dan pengurang. ++a).1. clrscr(). b). --b). b = 5. Borland C++ menyediakan operator penambah dan pengurang. a). b). a). maka proses penambahan atau pengurangan akan dilakukan setelah ekspresi ini dijumpai atau nilai variabel akan tetap pada saat ekspresi ini ditemukan. = %d". 3. Contoh A ++ atau ++A / A-.h> main() { int a = 10. disederhanakan menjadi : A += 1 atau A -= 1.

= %d". b). Output yang akan dihasilkan. = %d". b--).4 Hasil Contoh-4 44 Pemrogramman C++ . = %d". a).3 Hasil Contoh-3 /* Penggunaan Notasi Dibelakang Variabel*/ #include <stdio. } Contoh-4 5.h> #include <conio. = A++ A B B-B %d". = %d". dari program contoh-4 diatas adalah : Gambar 3.Modul 3: Operator Borland C++ Output yang akan dihasilkan. a++). dari program contoh-3 diatas adalah : Gambar 3. printf("Nilai A printf("\nNilai printf("\nNilai printf("\nNilai printf("\nNilai printf("\nNilai getch(). b). a).h> main() { int a = 10. = %d". b = clrscr().

>= "<<y<<" = "<<e<<endl. c. e. Tabel Operator Relasi Operator == != > < >= <= Contoh-5 Keterangan Sama Dengan ( bukan pemberi nilai ) Tidak Sama dengan Lebih Dari Kurang Dari Lebih Dari sama dengan Kurang Dari sama dengan #include <stdio.h> #include <iostream. cin>>y.6. cout<<"Masukan Nilai Y = ".h> main() { float a. 3.Kom 45 . S. < "<<y<<" = "<<d<<endl. Operator Relasi Penjelasan Operator Relasi digunakan untuk membandingkan dua buah nilai. b. } cout<<endl.4. d. >= y. Hasil perbandingan operator ini menghasilkan nilai numerik 1 (True) atau 0 (False).h> #include <conio.Bab 3: Operator Borland C++ 3. Output yang akan dihasilkan. != y. f. a b c d e f = = = = = = x x x x x x == y. clrscr(). != "<<y<<" = "<<b<<endl. y. cout<<"Hasil cout<<"Hasil cout<<"Hasil cout<<"Hasil cout<<"Hasil cout<<"Hasil getch(). cout<<"Masukan Nilai X = ". <= "<<y<<" = "<<f<<endl. <= y. > y. x. Tabel. cin>>x. dari dari dari dari dari dari "<<x<<" "<<x<<" "<<x<<" "<<x<<" "<<x<<" "<<x<<" == "<<y<<" = "<<a<<endl. dari program contoh-5 diatas adalah : Frieyadie. < y. > "<<y<<" = "<<c<<endl.

Tabel.5.Modul 3: Operator Borland C++ Gambar 3.3 >= 4 Penggabungan ketiga ekspresi relasi diatas menjadi . B = 3. C = 7. Contoh : Ekspresi Relasi-1 Ekspresi Relasi-2 Ekspresi Relasi-3 A + 4 < 10 B>A + 5 C . Operator Logika Penjelasan Operator Relasi digunakan untuk menghubungkan dua buah operasi relasi menjadi sebuah ungkapan kondisi. bila semua ekspresi relasi yang dihubungkan bernilai BENAR. Tabel Operator Relasi Operator && || ! Keterangan Operator Logika AND Operator Logika OR Operator Logika NOT 3. Hasil dari operator logika ini menghasilkan nilai numerik 1 (True) atau 0 (False). 3. Operator Logika AND Penjelasan Operator logika AND digunakan untuk menghubungkan dua atau lebih ekspresi relasi.1. akan dianggap BENAR. A+4 < 10 && B>A+5 && C–3 >= 4 Jika nilai A = 3. maka ketiga ekspresi tersebut mempunyai nilai : 46 Pemrogramman C++ .5.7.5 Hasil Contoh-5 3.

h> main() { float a.Kom 47 .3 >= 4 adalah " <<f. cout<<"Hasil dari g = d cout<<endl. && e && f. Output yang akan dihasilkan. clrscr().3 >= 4.h> #include<conio. // Proses d e f g = = = = a b c d + 4 < 10. } cout<<endl<<endl. c. + 4 < 10 adalah " <<d<<endl. > a + 5. cout<<"Masukan Nilai A = ". b. S. cout<<"Program Ekspresi cout<<"Hasil dari d = a cout<<"Hasil dari e = b cout<<"Hasil dari f = c cout<<endl<<endl. cout<<"Masukan Nilai B = ". cout<<"Masukan Nilai C = ". maka A+4 < 10 && B>A+5 && C–3 >= 4 Contoh-6 SALAH = 0 /* Penggunaan Operasi Logika AND */ #include<stdio. dari program contoh-6 diatas adalah : Frieyadie.h> #include<iostream. e. cin>>a.Bab 3: Operator Borland C++ • • • Ekspresi Relasi-1 Ekspresi Relasi-2 Ekspresi Relasi-3 A + 4 < 10 B>A + 5 C – 3 >= 4 3 + 4 < 10 3>3+5 7 – 3 >= 4 BENAR SALAH BENAR Dari ekspresi relasi tersebut mempunyai nilai BENAR. g. . && e && f adalah " <<g. cin>>c. h. . AND"<<endl<<endl. d. f. > a + 5 adalah " <<e<<endl. cin>>b. getch().

C = 7.Modul 3: Operator Borland C++ Gambar 3. A+4 < 10 || B>A+5 || C–3 > 4 Jika nilai A = 3. Contoh : Ekspresi Relasi-1 Ekspresi Relasi-2 Ekspresi Relasi-3 A + 4 < 10 B>A + 5 C-3>4 Penggabungan ketiga ekspresi relasi diatas menjadi . maka ekspresi tersebut tetap bernilai BENAR.6 Hasil Contoh-6 3. bila salah satu ekspresi relasi yang dihubungkan bernilai BENAR dan bila semua ekspresi relasi yang dihubungkan bernilai SALAH.2. B = 3. maka akan bernilai SALAH.5. maka ketiga ekspresi tersebut mempunyai nilai : • Ekspresi Relasi-1 A + 4 < 10 3 + 4 < 10 BENAR • Ekspresi Relasi-2 B>A + 5 3>3+5 SALAH • Ekspresi Relasi-3 C-3>4 7–3>4 SALAH Dilihat ekspresi diatas salah satu ekspresi tersebut mempunyai nilai BENAR. akan dianggap BENAR. Operator Logika OR Penjelasan Operator logika OR digunakan untuk menghubungkan dua atau lebih ekspresi relasi. A+4 < 10 || B>A+5 || C–3 > 4 BENAR = 1 48 Pemrogramman C++ .

f. g. OR"<<endl<<endl.Kom 49 . + 5 > 10 adalah " <<d<<endl.Bab 3: Operator Borland C++ Contoh-7 /* Penggunaan Operasi Logika OR */ #include<stdio. > 5 + a adalah " <<e<<endl. . getch(). cout<<"Masukan Nilai B = ".7 Hasil Contoh-7 Frieyadie. d. c. S. cout<<"Masukan Nilai A = ". || e || f. d e f g = = = = a b c d + 5 > 10. cout<<"Hasil dari g = d cout<<endl.4 <= 7. cout<<"Program Ekspresi cout<<"Hasil dari d = a cout<<"Hasil dari e = b cout<<"Hasil dari f = c cout<<endl<<endl. e. . clrscr(). cin>>c. } Output yang akan dihasilkan. dari program contoh-7 diatas adalah : cout<<endl<<endl. cout<<"Masukan Nilai C = ". > 5 + a . h. cin>>a. Gambar 3.h> #include<conio.h> #include<iostream.h> main() { float a. cin>>b. b. || e || f adalah " <<g.4 <= 7 adalah " <<f.

begitu pula sebaliknya. /* Proses */ b = (a + 4 < 10). b. cout<<endl<<"Program Ekspresi NOT "<<endl. Jika nilai yang disebutkan bernilai BENAR maka akan menghasilkan nilai SALAH. } getch().Modul 3: Operator Borland C++ 3. !(A+4 < 10) Jika nilai A = 3. maka ekspresi tersebut akan bernilai SALAH !(A+4 < 10) !(BENAR) = SALAH = 0 Contoh-8 /* Penggunaan Operasi Logika NOT */ #include <stdio. 50 Pemrogramman C++ . clrscr(). c = !(b). cout<<"Nilai b = (a + 4 < 10) = "<<b<<endl. cout<<"Nilai A = "<<a<<endl.5.h> main() { int a.3. c.h> #include<iostream. = ". cout<<"Masukan Nila A cin>>a.h> #include <conio. maka ekspresi tersebut mempunyai nilai : • Ekspresi Relasi-1 A + 4 < 10 3 + 4 < 10 BENAR Dilihat ekspresi diatas salah satu ekspresi tersebut mempunyai nilai BENAR dan jika digunakan operator logika NOT. Operator Logika NOT Penjelasan Operator logika NOT akan memberikan nilai kebalikkan dari ekspresi yang disebutkan. cout<<"Nilai c = !(b) = "<<c. Contoh : Ekspresi Relasi A + 4 < 10 Penggunaan Operator Logika NOT diatas menjadi .

Bab 3: Operator Borland C++ Output yang akan dihasilkan. Operator ~ << >> & ^ | Keterangan Bitwise NOT Bitwise Shift Left Bitwise Shift Right Bitwise AND Bitwise XOR Bitwise OR Tabel.6. S.1. 3.6. Borland C++ menyedikan enam buah operator bitwise.8 Hasil Contoh-8 3. Operator Bitwise << (Shift Left) Penjelasan Operator Bitwise Shift Left digunakan untuk menggeser sejumlah bit kekiri.Kom 51 .6. Contoh : 0000000011001001 = 201 //////// 0000000110010010 = 402 digeser 1 bit ke kiri Dibagian kanan disisipkan 0. Operator Bitwise Penjelasan Operator Bitwise digunakan untuk memanipulasi data dalam bentuk bit. Tabel Operator Bitiwise 3. dari program contoh-8 diatas adalah : Gambar 3. sebanyak bit yang digeser Frieyadie.

h> #include<conio. cout<<"Masukan Nilai X = ". cin>>x. Operator Bitwise >> (Shift Right) Penjelasan Operator Bitwise Shift Right digunakan untuk menggeser sejumlah bit kanan. cout<<"Hasil dari Geser 1 Bit Kekiri = "<<x<<endl.h> void main() { int x. Output yang akan dihasilkan.Modul 3: Operator Borland C++ Contoh-9 #include<iostream.9 Hasil Contoh-9 3. x = x << 1. sebanyak bit yang digeser 52 Pemrogramman C++ . clrscr().2.h> #include<stdio. dari program contoh-9 diatas adalah : Gambar 3. Contoh : 0000000011001001 = 201 \\\\\\\\ digeser 1 bit ke kanan 0000000001100100 = 100 Dibagian kanan disisipkan 0. } getch().6.

Bab 3: Operator Borland C++ Contoh-10 #include<iostream. cin>>x.h> #include<conio. S. Tabel Operator Bitiwise And Bit Operand 1 Bit Operand 2 0 0 0 1 1 0 1 1 Contoh : 11001001 = 201 01100100 = 100 01000000 = 64 Hasil Operand 0 0 0 1 AND Frieyadie. Akan bernilai benar (1) jika semua operand yang digabungkan bernilai benar (1).6.h> void main() { int x. 3. getch(). } Output yang akan dihasilkan.3. cout<<"Masukan Nilai X = ".Kom 53 . dari program contoh-10 diatas adalah : Gambar 3.h> #include<stdio. Operator Bitwise & (And) Penjelasan Operator Bitwise & ( And ) digunakan untuk membandingkan bit dari dua operand.7. x = x >> 1. clrscr().10 Hasil Contoh-10 3. Tabel. cout<<"Hasil dari Geser 1 Bit Kekanan = "<<x<<endl. Berikut anda dapat melihat ilustrasi untuk membandingkan bit dari 2 operand.

Tabel Operator Bitiwise Or Bit Operand 1 Bit Operand 2 0 0 0 1 1 0 1 1 54 Hasil Operand 0 1 1 1 Pemrogramman C++ . Tabel. a = x & y. dari program contoh-11 diatas adalah : Gambar 3.6.h> #include<conio.4. } Output yang akan dihasilkan. getch(). cout<<"Masukan Nilai X = ". 3.Modul 3: Operator Borland C++ Contoh-11 #include<iostream. cout<<"Masukan Nilai Y = ".h> main() { int a. cin>>y. y. Berikut anda dapat melihat ilustrasi untuk membandingkan bit dari 2 operand. cin>>x. x. clrscr().h> #include<stdio.8. cout<<"Hasil dari "<<x<<" & "<<y<<" = "<<a<<endl. Operator Bitwise | ( Or ) Penjelasan Operator Bitwise | ( Or ) digunakan untuk membandingkan bit dari dua operand. cout<<’\n’. Akan bernilai benar jika ada salah satu operand yang digabungkan ada yang bernilai benar (1).11 Hasil Contoh-11 3.

cout<<"Masukan Nilai Y = ". Tabel.Kom Hasil Operand 0 1 1 0 55 .9. Operator Bitwise ^ ( eXclusive Or ) Penjelasan Operator Bitwise ^ ( XOr ) digunakan untuk membandingkan bit dari dua operand.5. Tabel Operator Bitiwise XOr Bit Operand 1 Bit Operand 2 0 0 0 1 1 0 1 1 Frieyadie. cout<<"Hasil dari "<<x<<" | "<<y<<" = "<<a<<endl. S.6. cin>>x. y. cin>>y.12 Hasil Contoh-12 3. dari program contoh-12 diatas adalah : Gambar 3. OR } Output yang akan dihasilkan. x.h> #include<stdio. a = x | y. cout<<"Masukan Nilai X = ". getch().Bab 3: Operator Borland C++ Contoh : 11001001 = 201 01100100 = 100 11101101 = 237 Contoh-12 #include<iostream. Akan bernilai benar (1) jika dari dua bit yang dibadingkan hanya sebuah bernilai benar (1).h> #include<conio.h> main() { int a. Berikut anda dapat melihat ilustrasi untuk membandingkan bit dari 2 operand. cout<<’\n’. clrscr(). 3.

cout<<"Hasil dari "<<x<<" ^ "<<y<<" = "<<a<<endl.h> #include<stdio. getch(). cout<<’\n’.10.6. dari program contoh-13 diatas adalah : Gambar 3. x.h> main() { int a. Berikut anda dapat melihat ilustrasi untuk membandingkan bit dari 2 operand. Tabel Operator Bitiwise Not Bit Operand Hasil 0 1 1 0 56 Pemrogramman C++ . Operator Bitwise ~ ( Not ) Penjelasan Operator Bitwise ~ ( Not ) digunakan membalik nilai bit dari suatu operand. cin>>y. cin>>x. cout<<"Masukan Nilai X = ".13 Hasil Contoh-13 3. clrscr(). y. XOR } Output yang akan dihasilkan. Tabel.Modul 3: Operator Borland C++ Contoh : 11001001 = 201 01100100 = 100 10101101 = 173 Contoh-13 #include<iostream. cout<<"Masukan Nilai Y = ".h> #include<conio.5. a = x ^ y. 3.

Latihan Penjelasan No. cout<<"Hasil dari ~"<<x<<" = "<<a<<endl. cout<<"Masukan Nilai X = ".h> #include<conio. B = 6 . M = 3 a. Diberikan nilai A = 3. K = 5.14 Hasil Contoh-14 3. C = 2 . } getch(). 1 Tentukan apa hasil numerik dari ekspresi relasi dan logika dibawah ini. clrscr(). cout<<’\n’.Kom 57 . 2 Dari program dibawah ini. x. Output yang akan dihasilkan. cin>>x. d.7. a = ~x. bagaimanakah keluaran yang dihasilkan Frieyadie. S. L = 4.h> #include<stdio.h> main() { int a.Bab 3: Operator Borland C++ Contoh : 00001000 = 8 |||||||| 11110111 = 247 = -9 Contoh-14 #include<iostream. e. dari program contoh-14 diatas adalah : Gambar 3. b. y. c. D K L A K = + + * + (4 + 2 > A && B – 5 < M || (C * M < 5 < M || C * K < 4 <= 3 * M + B 10 > A && L – 2 > 2 > 3 + 2 || B + 2 <= 6 + 2 ) L && 2 * M – L > 0 L && 2 * K – L > 0 4 * C Penjelasan No.

= "<<a++. = %d". cout<<endl<<"Nilai cout<<endl<<"Nilai cout<<endl<<"Nilai cout<<endl<<"Nilai cout<<endl<<"Nilai a*=2. = %d".a++). cout<<endl<<"Nilai cout<<endl<<"Nilai cout<<endl<<"Nilai cout<<endl<<"Nilai cout<<endl<<"Nilai } getch(). a = a++ ++a a-a = "<<a. = %d".a).h> #include<conio. = "<<++a.a++). 58 Pemrogramman C++ . printf("\n Nilai printf("\n Nilai printf("\n Nilai printf("\n Nilai printf("\n Nilai } Penjelasan No. Dari program dibawah ini.--a). a = ++a a++ --a a-"<<a. = "<<a--.h> #include<conio.++a).Modul 3: Operator Borland C++ #include<stdio. = "<<++a.a).h> #include<iostream.--a). = "<<a++. = %d".++a). = "<<--a. = "<<a--. clrscr().h> main() { int a = 25.h> main() { int a = 21. %d". a = a++ ++a --a a = a = ++a a++ --a a-- %d". = %d". %d". "<<a. 3 getch().a--). bagaimanakah keluaran yang dihasilkan #include<stdio. = %d". printf("\n Nilai printf("\n Nilai printf("\n Nilai printf("\n Nilai printf("\n Nilai a+=3. = %d".a).

Dari pengertian tersebut dapat dilihat dari diagram alir berikut: salah kondisi benar perintah Gambar 4.Kom 59 . S.Bab 4 : Operasi Penyeleksian Kondisi Pemrogramman C++ Bab 4 : Operasi Penyeleksian Kondisi Penjelasan Pernyataan Percabangan digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada. “ Jika kondisi bernilai benar. bentuk penulisannya sebagai berikut : Frieyadie. Borland C++ menyediakan beberapa perintah antara lain. Jika pemakaian if diikuti dengan pernyataan majemuk.1. Diagram Alir IF Bentuk umum (kondisi) if if dari pernyataan pernyataan.1. 4. pernyataan majemuk atau pernyataan kosong. Pernyataan IF Penjelasan Pernyataan if mempunyai pengertian. Penulisan kondisi harus didalam tanda kurung dan berupa ekspresi relasi dan penulisan pernyataan dapat berupa sebuah pernyataan tunggal. Untuk keperluan pengambilan keputusan. maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan”.

1. dengan kriteria : Tidak ada potongan jika total pembelian kurang dari Rp.000. ". cin>>tot_beli.potongan yang diterima sebesar 20% dari total pembelian. Hasil Contoh-1 60 Pemrogramman C++ . cout<<"Besarnya Potongan Rp.h> #include<iostream.2 * tot_beli. "<<potongan<<endl.bab 4 : Operasi Penyeleksian Kondisi if (kondisi) { pernyataan. jum_bayar = tot_beli . 50. if (tot_beli >= 50000) potongan = 0. "<<jum_bayar.h> #include<conio. cout<<"Jumlah yang harus dibayarkan Rp.h> main() { double tot_beli.Jika total pembelian lebih dari atau sama dengan Rp. cout<<"Total Pembelian Rp.000.potongan. …… } Contoh Menentukan besarnya potongan dari pembelian barang yang diberikan seorang pembeli. dari program contoh-1 diatas adalah : Gambar 4. 50. } Output yang akan dihasilkan. clrscr(). getch(). Contoh-1 #include<stdio. jum_bayar=0. potongan=0.

maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan perintah-2”. S. Perintah-1 dan perintah-2 dapat berupa sebuah pernyataan tunggal. } Frieyadie. pernyataan majemuk atau pernyataan kosong. Diagram Alir if-else Bentuk umum dari pernyataan if if (kondisi) perintah-1. else perintah-2.. “ Jika kondisi bernilai benar.Bab 4 : Operasi Penyeleksian Kondisi 4.1.. ... Dari pengertian tersebut dapat dilihat dari diagram alir berikut : kondisi Salah Benar Perintah-1 Perintah-2 Gambar 7.. Pernyataan IF . Jika pemakaian if-else diikuti dengan pernyataan majemuk. bentuk penulisannya sebagai berikut: if (kondisi-1) { perintah-1. } else { perintah-2.Kom 61 ..2.ELSE Penjelasan Pernyataan if mempunyai pengertian.1. .

bab 4 : Operasi Penyeleksian Kondisi

Contoh Menentukan besarnya potongan dari pembelian barang yang diberikan seorang pembeli, dengan kriteria : jika total pembelian kurang dari Rp. 50.000,- potongan yang diterima sebesar 5% dari total pembelian. Jika total pembelian lebih dari atau sama dengan Rp. 50.000,potongan yang diterima sebesar 20% dari total pembelian.

Contoh-2

#include<stdio.h> #include<conio.h> #include<iostream.h> main() { double tot_beli, potongan=0, jum_bayar=0; clrscr(); cout<<"Total Pembelian Rp. "; cin>>tot_beli; if (tot_beli >= 50000) potongan = 0.2 * tot_beli; else potongan = 0.05 * tot_beli; cout<<"Besarnya Potongan Rp. "<<potongan<<endl; jum_bayar = tot_beli - potongan; cout<<"Jumlah yang harus dibayarkan Rp. "<<jum_bayar; getch(); } Output yang akan dihasilkan, dari program contoh-2 diatas adalah :

Gambar 4.2. Hasil Contoh-2

4.1.2. Pernyataan NESTED IF
Penjelasan Nested if merupakan pernyataan if berada didalam pernyataan if yang lainnya. Bentuk penulisan pernyataan Nested if adalah : Pemrogramman C++

62

Bab 4 : Operasi Penyeleksian Kondisi

if(syarat) if(syarat) … perintah; else … perintah; else if(syarat) … perintah; else … perintah;
Contoh Suatu perusahaan memberikan komisi kepada para selesman dengan ketentuan sebagai berikut: • • • Bila salesman dapat menjual barang hingga Rp. 20.000 ,- , akan diberikan uang jasa sebesar Rp. 10.000 ditambah dengan uang komisi Rp. 10% dari pendapatan yang diperoleh hari itu. Bila salesman dapat menjual barang diatas Rp. 20.000 ,- , akan diberikan uang jasa sebesar Rp. 20.000 ditambah dengan uang komisi Rp. 15% dari pendapatan yang diperoleh hari itu. Bila salesman dapat menjual barang diatas Rp. 50.000 ,- , akan diberikan uang jasa sebesar Rp. 30.000 ditambah dengan uang komisi Rp. 20% dari pendapatan yang diperoleh hari itu.

Contoh-3

#include<stdio.h> #include<conio.h> #include<iostream.h> main() { float pendptan, jasa=0, komisi=0, total=0; clrscr(); cout<<"Pendapatan Hari ini Rp. "; cin>>pendptan; if (pendptan >= 0 && pendptan <= 200000) { jasa=10000; komisi=0.1*pendptan; } else { if(pendptan<=500000) { jasa=20000; komisi=0.15*pendptan; } else { jasa=30000; komisi=0.2*pendptan; } }

Frieyadie, S.Kom

63

bab 4 : Operasi Penyeleksian Kondisi

/* menghitung total */ total = komisi+jasa; cout<<"Uang Jasa Rp. "<<jasa<<endl; cout<<"Uang Komisi Rp. "<<komisi<<endl; cout<<"============================="<<endl; cout<<"Hasil Total Rp. "<<total<<endl; getch(); } Output yang akan dihasilkan, dari program contoh-3 diatas adalah :

Gambar 4.3 Hasil Contoh-3

4.1.3. Pernyataan IF – ELSE Majemuk
Penjelasan Bentuk dari if-else bertingkat sebenarnya serupa dengan nested if, keuntungan penggunanan if-else bertingkat dibanding dengan nested if adalah penggunaan bentuk penulisan yang lebih sederhana Bentuk Penulisannya

if (syarat) { … perintah; … perintah; } else if (syarat) { … perintah; … perintah; } else { … perintah; … perintah; }

64

Pemrogramman C++

} else if(pendptan<=500000) { jasa=20000. 200. akan diberikan uang jasa sebesar Rp. akan diberikan uang jasa sebesar Rp. komisi=0.Kom 65 . if (pendptan >= 0 && pendptan <= 200000) { jasa=10000. "<<total<<endl.000 ditambah dengan uang komisi Rp. 20% dari pendapatan yang diperoleh hari itu.000 . S. cout<<"Hasil Total Rp. 10% dari pendapatan yang diperoleh hari itu.h> #include<iostream. 30..000 ditambah dengan uang komisi Rp.h> #include<conio. • Bila salesman dapat menjual barang diatas Rp. Contoh-4 #include<stdio.000 . jasa=0. komisi=0. } Frieyadie. 20... total=0.2*pendptan. cout>>"Pendapatan Hari ini Rp.15*pendptan. clrscr(). 10. ". "<<komisi<<endl. • Bila salesman dapat menjual barang diatas Rp. 500. cin<<pendptan. cout<<"============================="<<endl. akan diberikan uang jasa sebesar Rp.. cout<<"Uang Jasa Rp.1*pendptan. komisi=0. "<<jasa<<endl.h> main() { float pendptan.Bab 4 : Operasi Penyeleksian Kondisi Contoh Suatu perusahaan memberikan komisi kepada para selesman dengan ketentuan sebagai berikut: • Bila salesman dapat menjual barang hingga Rp. getch(). 200. 15% dari pendapatan yang diperoleh hari itu.000 ditambah dengan uang komisi Rp.. } /* menghitung total */ total = komisi+jasa. cout<<"Uang Komisi Rp.000 . komisi=0. } else { jasa=30000..

…… …… default : … perintah.case ini memiliki kegunaan sama seperti if – else bertingkat. maka program akan diteruskan kecabang – cabang yang lainnya.case Penjelasan Bentuk dari switch . Contoh-5 #include<stdio.h> #include<iostream. … perintah. … perintah. Pernyataan switch . break.case merupakan pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif.bab 4 : Operasi Penyeleksian Kondisi Output yang akan dihasilkan. Pernyataan break menunjukan bahwa perintah siap keluar dari switch. break. … perintah. dari program contoh-4 diatas adalah : Gambar 4.h> Pemrogramman C++ 66 . Bentuk penulisan perintah ini sebagai berikut : switch (ekspresi integer atau karakter ) { case konstanta-1 : … perintah.h> #include<conio. tetapi penggunaannya untuk memeriksa data yang bertipe karakter atau integer.2. Jika pernyataan ini tidak ada. } Setiap cabang akan dijalankan jika syarat nilai konstanta tersebut dipenuhi dan default akan dijalankan jika semua cabang diatasnya tidak terpenuhi. case konstanta-2 : … perintah.4 Hasil Contoh-4 4. Pernyataan switch .

Elelktronik". clrscr().5 Hasil Contoh-5 Contoh-6 #include<stdio.h> #include<conio. case 'C' : cout<<"Alat break.h> main() { char kode. case 'B' : cout<<"Alat break. cout<<"Masukkan Kode Barang [A. Salah Memasukan kode". default: cout<<"Anda break. Gambar 4. switch(kode) { case 'A' : cout<<"Alat break. Masak".C] : ". cin>>kode. dari program contoh-5 diatas adalah : Olah Raga".Bab 4 : Operasi Penyeleksian Kondisi main() { char kode. } getch(). S.h> #include<iostream.C] : ".. Frieyadie. cin>>kode. clrscr(). } Output yang akan dihasilkan. cout<<"Masukkan Kode Barang [A..Kom 67 .

break. } Output yang akan dihasilkan.h> #include<iostream. dari program contoh-6 diatas adalah : Gambar 4.3. break. Operator ?: Penjelasan Operator ?: disebut dengan Conditional Operator atau Operator Kondisi yang digunakan untuk menyeleksi nilai untuk mendapatkan hasil dari kondisi yang diseleksi.6 Hasil Contoh-6 4. break. } getch(). Operator ?: ini tergolong kedalam operator ternary. case 'C' : case 'c' : cout<<"Alat Masak". Bentuk Penulisan : Ekspresi Logika-OR ? Ekspresi : Ekspresi Kondisi Contoh-7 #include<conio.h> #include<stdio.bab 4 : Operasi Penyeleksian Kondisi switch(kode) { case 'A' : case 'a' : cout<<"Alat Olah Raga".h> Pemrogramman C++ 68 . break. case 'B' : case 'b' : cout<<"Alat Elelktronik". default: cout<<"Anda Salah Memasukan kode".

x = 5. x = 5.h> #include<stdio. getche(). y . dari program contoh-7 diatas adalah : Gambar 4. z . clrscr(). cout<<"\nNilai Bilangan x = "<<x.h> #include<iostream.7 Hasil Contoh-7 Pada contoh program – 7 diatas. if (x < y) z = x. } Frieyadie. y .h> main() { int x. clrscr(). cout<<"\nNilai Bilangan y = "<<y<<endl. cout<<"\nNilai yang lebih kecil adalah = "<< z. cout<<"\nNilai Bilangan x = "<<x. cout<<"\nNilai yang lebih kecil adalah = "<< z. cout<<"\nNilai Bilangan y = "<<y<<endl. getche(). S. } Output yang akan dihasilkan. y = 6. z . z = (x < y) ? x : y. merupakan pengaplikasian dari perintah if – else berikut : Contoh-8 #include<conio. y = 6.Bab 4 : Operasi Penyeleksian Kondisi main() { int x. else z = y.Kom 69 .

Latihan Penjelasan No. Nilai Tugas dan Nilai Ujian diinput. maka mendapat hadiah Hiburan • Tampilan yang diinginkan sebagai berikut : Layar Masukkan PROGRAM HITUNG NILAI RATA-RATA Nama Siswa : . Dengan ketentuan sebagai berikut : • Nama Siswa. Nilai Keaktifan. maka mendapat hadiah Seperangkat Komputer P4 . <diinput> Nilai Pertandingan I : . • Ketentuan Mendapat Hadiah dari pertandingan : .. 500.... maka mendapat hadiah Seperangkat Uang sebesar Rp. <diinput> Nilai Pertandingan III : . • Proses yang dilakukan untuk mendapatkan nilai murni dari masing-masing nilai.Jika Nilai Rata-Rata < 70. Nilai Pertandingan II.Jika Nilai Rata-Rata >= 85..8 Hasil Contoh-8 4. <diinput> Nilai Pertandingan II : .000 .. 1 Buatlah program untuk menghitung nilai rata-rata dari seorang siswa.. adalah Pemrogramman C++ 70 .. <hasil proses> Penjelasan No.. 2 Buatlah program untuk menghitung nilai akhir seorang siswa dari kursus yang diikutinya.Jika Nilai Rata-Rata >= 70. dari program contoh-8 diatas adalah : Gambar 4.. <tampil data> Memperoleh nilai rata-rata <hasil proses> dari hasil perlombaan yang diikutinya. • Nilai Rata-rata merupakan hasil dari Nilai Pertandingan I.bab 4 : Operasi Penyeleksian Kondisi Output yang akan dihasilkan. dengan ketentuan sebagai berikut : • Nama Siswa. Nilai Pertandingan III diinput. Nilai Pertandingan I..4.. II dan III dibagi dengan 3. Hadiah yang didapat adalah . <diinput> Layar Keluaran Siswa yang bernama .

<hasil proses> Grade nilai yang didapat adalah ...<hasil proses> Nilai Tugas * 30% : ... <diinput> Nilai Tugas : .. <hasil proses> Penjelasan No. 3 Buatlah program untuk menghitung total pembayaran dari sebuah penjualan agen susu di kota besar ini.. Dengan ketentuan sebagai berikut : • Jenis susu diinput diinput berdasarkan kode yang sudah ditentukan • Jika kode A adalah Dancow • Jika kode B adalah Bendera • Jika kode A adalah SGM • Ukuran kaleng susu diinput berdasarkan kode yang sudah ditentukan. • Jika kode 1 adalah Kecil • Jika kode 2 adalah Sedang • Jika kode 3 adalah Besar Harga susu sesuai dengan jenis susu dan ukuran kaleng susu 71 • Frieyadie...... <diinput> Nilai Ujian : . S.<hasil proses> Nilai Ujian * 50% : . Nilai Murni Tugas = Nilai Tugas dikalikan dengan 30% Nilai Murni Ujian = Nilai Ujian dikalikan dengan 50% Nilai Akhir adalah Nilai Murni Keaktifan + Nilai Murni Tugas + Nilai Murni Ujian Ketentuan untuk mendapatkan grade nilai : • Nilai Akhir >= 80 mendapat Grade A • Nilai Akhir >= 70 mendapat Grade B • Nilai Akhir >= 59 mendapat Grade C • Nilai Akhir >= 50 mendapat Grade D • Nilai Akhir < 50 mendapat Grade E Tampilan yang diinginkan sebagai berikut : • Layar Masukkan PROGRAM HITUNG NILAI AKHIR Nama Siswa : ...<hasil proses> Jadi Siswa yang bernama <tampil data>memperoleh nilai akhir sebesar .<diinput> Nilai Keaktifan : .. <diinput> Layar Keluaran Siswa yang bernama <tampil data> Dengan Nilai Persentasi Yang dihasilkan.Bab 4 : Operasi Penyeleksian Kondisi • • • • • Nilai Murni Keaktifan = Nilai Keaktifaan dikalikan dengan 20%.Kom .......... Nilai Keaktifan * 20% : .........

Ukuran Besar C. Ukuran Kecil 2. Ukuran Sedang 3. dengan memperoleh tujangan-tunjangan sebagai berikut : • Tunjangan Jabatan Golongan 1 2 3 Persentase 5% 10% 15% 72 Pemrogramman C++ . < diinput > Harga Satuan Barang Rp... Ukuran Sedang 3... Ukuran Sedang 3. memberikan Honor tetap kepada karyawan kontraknya sebesar Rp. Susu SGM 1.. Susu Bendera 1. Ukuran Kecil 2. < diinput > Harga Yang Harus dibayar Sebesar Rp... Ukuran Besar Layar Keluaran Nasukan Jenis Susu : . Susu Dancow 1. 4 PT.000.. <hasil proses> Penjelasan No. < diinput > Nasukan Ukuran Kaleng : .. .< tampil harga satuan > Jumlah Yang dibeli : ..per bulan.. 300. Ukuran Kecil 2.bab 4 : Operasi Penyeleksian Kondisi JENIS SUSU DANCOW BENDERA SGM • HARGA BERDASARKAN UKURAN KALENG SUSU KECIL SEDANG BESAR 25000 20000 15000 20000 17500 13500 22000 18500 15000 Proses yang dilakukan untuk mendapatkan Total Pembayaran Total Bayar = Harga Susu per ukuran dan Jenis dikali dengan banyak beli • Tampilan yang diinginkan sebagai berikut : Layar Masukkan TOKO KELONTONG KERONCONGAN -------------------------A.. Ukuran Besar B. DINGIN DAMAI.

.. . ....5% Layar Masukkan Program Hitung Honor Karyawan Kontrak PT. .... maka kelebihkan jam kerja tersebut dikalikan dengan honor lembur perjam sebesar Rp.500 untuk setiap kelebihan jam kerja perharinya.• Tunjangan Pendidikan Kode 1 2 3 • Honor Lembur Jumlah jam kerja normal sebanyak 8 Jam Kerja. .. maka mendapatkan tunjangan sebesasr 15% * Rp.. <hasil <hasil <hasil <hasil . <hasil proses> ... • Tampilan yang diinginkan sebagai berikut : Pendidikan SMU D3 S1 Persentase 2. Rp... ... 2. 300.5% 5% 7...Kom 73 ...Bab 4 : Operasi Penyeleksian Kondisi Sebagai contoh : Jika seorang keryawan tersebut dengan golongan 3.. DINGIN DAMAI Nama Karyawan : Golongan : Pendidikan (SMU/D3/S1) : Jumlah Jam Kerja : Layar Keluaran Karyawan yang bernama : . <tampil data> Honor yang diterima Honor Tetap Tunjangan jabatan Tunjangan Pendidikan Honor Lembur Honor Yang Diterima Rp.. Honor lembur diberikan jika jumlah jam kerja sebih dari 8 jam.. Rp. . S..000.. Rp. proses> proses> proses> proses> + Rp. <di <di <di <di input> input> input> input> Frieyadie. .

bab 4 : Operasi Penyeleksian Kondisi

Lembar Ini Sengaja Dikosongkan ( Untuk Catatan Boleh Juga )

74

Pemrogramman C++

Bab 5 : Proses Perulangan

Pemrogramman C++

Bab 5 : Proses Perulangan
Penjelasan Operasi perulangan selalu dijumpai didalam bahasa pemrograman, disini akan dibahasa beberapa perintah perulangan diantaranya.

5.1. Pernyataan for
Penjelasan Perulangan yang pertama adalah for. Bentuk umum pernyataan for sebagai berikut :

for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )

Bila pernyataan didalam for lebih dari satu maka pernyataan-pernyataan tersebut harus diletakan didalam tanda kurung.
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah ) { pernyataan / perintah; pernyataan / perintah; pernyataan / perintah; }

Kegunaan dari masing-masing argumen for diatas adalah : • • Inisialisasi : merupakan bagian untuk memberikan nilai awal untuk variabel-variabel tertentu. Syarat Pengulangan : memegang kontrol terhadap pengulangan, karena bagian ini yang akan menentukan suatu perulangan diteruskan atau dihentikan. Pengubah Nilai Pencacah : mengatur kenaikan atau penurunan nilai pencacah.

Contoh : Sebagai contoh program untuk mencetak bilangan dari 1 hingga 10 secara menaik, secara menurun dan menampilkan bilangan ganjil, sebagai berikut: Frieyadie, S.Kom 75

Bab 5 : Proses Perulangan

Contoh-1

/* --------------------------- */ /* Program for - bilangan naik */ /* --------------------------- */ #include<stdio.h> #include<conio.h> #include<iostream.h> main() { int a; clrscr(); for(a = 1; a <= 10; ++a) cout<<a; getch(); } Output yang akan dihasilkan, dari program contoh-1 diatas adalah :

Gambar 5.1. Hasil Contoh-1

Contoh-2

/* ---------------------------- */ /* Program for - bilangan turun */ /* ---------------------------- */ # include <stdio.h> # include <conio.h> # include <iostream.h> main() { int a; clrscr(); for(a = 10; a >= 1; --a) cout<<a; getch(); } Output yang akan dihasilkan, dari program contoh-2 diatas adalah :

Gambar 5.2. Hasil Contoh-2 76

Pemrogramman C++

} Output yang akan dihasilkan.h> main() { int a. dari program contoh-3 diatas adalah : Gambar 5. e). b=1.h> #include <conio. getche(). c=2. textcolor(e). } Output yang akan dihasilkan. clrscr(). } textcolor(4+BLINK). a+=2) cout<<a. 17>e.Bab 5 : Proses Perulangan Contoh-3 /* ----------------------------. getch().1 */ /* ------------------------------*/ #include<stdio.3. Hasil Contoh-3 Contoh-4 /* ------------------------------*/ /* Program Menampilkan Warna . e.Kom 77 .bilangan ganjil */ /* ----------------------------.h> main() { int a=2. cprintf("\nwarna ke-%d".h> #include<conio. a <= 10. for(e=1. clrscr(). dari program contoh-4 diatas adalah : Frieyadie. for(a = 1.*/ #include <stdio. e++) { gotoxy(e.*/ /* Program for . S.e). cprintf("Borland C++").h> #include <iostream. d=1.

Bab 5 : Proses Perulangan Gambar 5.4. } getch(). return 0. dari program contoh-5 diatas adalah : 78 Pemrogramman C++ .h> #include<conio. i<20. penataan warna cprintf() = Menampilkan data dengan format pewarnaan teks dan pewarnaan latar belakang. Output yang akan dihasilkan. Hasil Contoh-4 Contoh-5 /* ------------------------------*/ /* Program Menampilkan Warna . cprintf("Borland C++\r\n").2 */ /* ------------------------------*/ #include<stdio. clrscr(). } • • textattr() = Menentukan warna tulisan dan warna latar belakang berdasarkan ketentuan angka 8 bit biner.h> int main(void) { int i. for (i=0. i++) { textattr(i + ((i+1) << 4)).

1.h> #include<conio. Bentuk umum pernyataan Nested for sebagai berikut : for ( inisialisasi. Frieyadie.5.*/ /* Program for . perulangan yang didalam terlebih dahulu dihitung hingga selesai. pengubah nilai pencacah) { pernyataan / perintah. syarat pengulangan.for Penjelasan Pernyataaan Nested for adalah suatu perulangan for didalam perulangan for yang lainnya.h> main() { int a.Kom 79 .Nested for */ /* ------------------------. Contoh-6 /* ------------------------.h> #include <iostream. Pernyataan nested . } } Didalam penggunaan nested-for.1.*/ #include<stdio. b.Bab 5 : Proses Perulangan Gambar 5. clrscr(). pengubah nilai pencacah ) { for ( inisialisasi. Hasil Contoh-5 5. kemudian perulangan yang diluar diselesaikan. syarat pengulangan. S.

2. Hasil Contoh-6 5. dari program contoh-7 diatas adalah : Contoh-7 80 Pemrogramman C++ . } Output yang akan dihasilkan.6. getch(). Sebagai contoh.*/ /* Program for Tdk Berhingga */ /* ------------------------. a <= 5. dari program contoh-6 diatas adalah : Gambar 5. } Output yang akan dihasilkan. a++) { printf("\n").1.Bab 5 : Proses Perulangan for(a = 1. b <= 5. for (bil = 60. hal ini sering terjadi disebabkan adanya kesalahan penanganan kondisi yang dipakai untuk keluar dari loop. b++) cout<<a<<" ".h> #include <iostream. } getch(). bil >=10. Perulangan Tidak Berhingga Penjelasan Perulangan tak berhingga merupakan perulangan ( loop ) yang tak pernah berhenti atau mengulang terus.*/ #include<stdio. clrscr(). bil++) cout<<bil<<" ".h> main() { int bil.h> #include<conio. jika penulisan perintah sebagai berikut : /* ------------------------. for(b = a.

Pernyataan goto Penjelasan Pernyataan goto merupakan instruksi untuk mengarahkan eksekusi program ke-pernyataan yang diawali dengan suatu label.*/ #include<iostream. char lagi. dapat juga langsung klik Close Button 5.Bab 5 : Proses Perulangan Gambar 5.7.h> #include<stdio. b. seharusnya penulisan yang benar berupa bil -Akan tetapi yang ditulis adalah : bil ++ Oleh karena kondisi bil >= 1 selalu bernilai benar ( karena bil bernilai 6).Kom . Jika terjadi hal semacam ini. akan terus dijalankan.*/ /* Program dengan pernyataan goto */ /* -----------------------------. untuk menghentikan proses yang terus menerus semacam ini dengan menekan tombol CTRL – PAUSE atau CTRL – BREAK. 81 Frieyadie. S. Label merupakan suatu pengenal (identifier) yang diikuti dengan tanda titik dua ( : ).h> #include<conio. dapat dilihat pada program berikut : Contoh-8 /* -----------------------------. Contoh Penggunaan goto.2. maka pernyataan cout<<bil<<" ". kesalahan terjadi pada pengubah nilai pencacah. Bentuk pemakaian goto sebagai berikut : goto label.h> main() { int a. Hasil Contoh-7 Pada pernyataan ini tidak akan berhenti untuk menampilkan bilangan menurun.

3. Pernyataan / perintah . } 82 Pemrogramman C++ . getch(). yaitu perulangan akan terus dilaksanakan selama syarat tersebut terpenuhi. b = a % 2. sebagai berikut : while ( syarat ) Pernyataan / perintah . Bentuk umum perulangan while.a. Pernyataan while Penjelasan Pernyataan perulangan while merupakan instruksi perulangan yang mirip dengan perulangan for. sebagai berikut : while ( syarat ) { Pernyataan / perintah . cout>>"Masukkan Bilangan = ". b).Bab 5 : Proses Perulangan atas: clrscr(). Bentuk umum perulangan while. dengan lebih dari perintah / pernyataan. Bentuk perulangan while dikendalikan oleh syarat tertentu. cin<<a. lagi = getche() . dari program contoh-8 diatas adalah : Gambar 5.8. printf("\n\nIngin Hitung Lagi [Y/T] : "). Hasil Contoh-8 5. if (lagi == 'Y' || lagi == 'y') goto atas. } Output yang akan dihasilkan. printf("Nilai %d %% 2 adalah = %d".

++bil.cpp */ /* ------------------. clrscr().h> main() { int bil=1. } getch(). bil+=2.h> #include <conio. while(bil<=10) { cout<<bil<<" ".h> main() { int bil=2. dari program contoh-10 diatas adalah : Frieyadie.h> #include <conio.*/ #include <stdio.h> #include <iostream. while(bil<=10) { cout<<bil<<" ".*/ #include <stdio. } getch(). clrscr(). } Output yang akan dihasilkan.Bab 5 : Proses Perulangan Contoh-9 /* ------------------.h> #include <iostream. S. Hasil Contoh-9 Contoh-10 /* ------------------.Kom 83 . } Output yang akan dihasilkan.cpp */ /* ------------------.*/ /* Program while02. dari program contoh-9 diatas adalah : Gambar 5.*/ /* Program while01.9.

sebagai berikut : do pernyataan / perintah .10. do { cout<<bil<<" ".h> #include <conio.*/ #include <stdio. getch(). Hasil Contoh-10 5. bil+=2.while.while */ /* -----------------.h> main() { int bil=2.while merupakan bentuk perulangan yang melaksanakan perulangan terlebih dahulu dan pengujian perulangan dilakukan dibelakang.while Penjelasan Pernyataan perulangan do .while. while ( syarat ).*/ /* Program do . Bentuk umum perulangan do .Bab 5 : Proses Perulangan Gambar 5. dengan lebih dari perintah / pernyataan. Bentuk umum perulangan do . } while ( syarat ). clrscr(). Pernyataan / perintah . sebagai berikut : do { Pernyataan / perintah . Contoh-11 /* -----------------.4.h> #include <iostream. } Pemrogramman C++ 84 . Pernyataan do . } while(bil<=10).

do { if (bil >= 6) break.h> #include <iostream.11.h> #include <conio.h> main() { int bil = 1. while dan do-while ).Bab 5 : Proses Perulangan Output yang akan dihasilkan. clrscr(). Hasil Contoh-11 5. dari program contoh-11 diatas adalah : Gambar 5. dari program contoh-12 diatas adalah : Contoh-12 Gambar 5.12.*/ #include <stdio. cout<<bil<<" ". Jika pernyataan break dikerjakan. S. Pernyataan break Penjelasan Pernyataan break telah dibahas pada pernyataan pengambilan keputusan switch. getch(). /* ------------------------------. Pernyataan break ini berfungsi untuk keluar dari struktur switch. } Output yang akan dihasilkan.Kom 85 .*/ /* Program do . maka eksekusi akan dilanjutkan ke pernyataan yang terletak sesudah akhir dari badan perulangan ( loop ). Selain itu pernyataan break berfungsi keluar dari perulangan ( for.5.while dengan break */ /* ------------------------------. Hasil Contoh-12 Frieyadie. } while(bil++).

*/ #include <stdio. dari program contoh-13 diatas adalah : Gambar 5. b=2. b+=c. } Output yang akan dihasilkan.h> main() { int a=3.h> #include <conio. /* -----------------------------. c=1.a.h> #include <iostream. if(c==13) break. clrscr().13. c+=2. printf("-------------------------"). dengan kata lain mengembalikan proses yang sedang dilaksanakan ke-awal loop lagi.h> 86 Pemrogramman C++ Contoh-14 .*/ /* Perulangan FOR dengan continue */ /* -----------------------------. bil<=10. */ /* ----------------------------. tanpa menjalankan sisa perintah dalam loop tersebut. c). printf("\n%d \t| %d \t| %d".*/ #include <stdio. printf("Bil-A | Bil-B | Bil-C\n").h> #include <conio. ++bil) { a+=b. Pernyataan continue Penjelasan Pernyataan continue digunakan untuk mengarahkan eksekusi ke iterasi (proses) berikutnya pada loop yang sama.*/ /* Perulangan FOR dengan break.6.Bab 5 : Proses Perulangan Contoh-13 /* ----------------------------. for(bil=1. Hasil Contoh-13 5. bil. } getche(). b.

Buatlah program untuk menghitung penjumlahan deret bilangan membentuk segitiga siku dengan hasilnya : 1 1 1 1 1 Frieyadie.14. S. Latihan Penjelasan Buatlah beberapa program seperti petunjuk berikut : 1. Buatlah program untuk menghitung 10 deret bilangan ganjil dengan hasilnya : 1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 + 19 = 100 3. } getch(). for(bil=1.Kom + + + + 2 2 + 3 2 + 3 + 4 2 + 3 + 4 + 5 = = = = = 1 3 6 10 15 87 .7. ++bil) { if(bil==6) continue. Hasil Contoh-14 5. cout<<bil<<" ". } Output yang akan dihasilkan. bil<=10.Bab 5 : Proses Perulangan main() { int bil. clrscr(). dari program contoh-14 diatas adalah : Gambar 5. Buatlah program untuk menghitung 10 deret bilangan genap dengan hasilnya : 2 + 4 + 6 + 8 + 10 + 12 + 14 + 16 + 18 + 20 = 110 2.

Buatlah program untuk menghitung perkalian deret bilangan ganjil membentuk segitiga siku dengan hasilnya : 1 1 1 1 1 * * * * 3 3 * 5 3 * 5 * 7 3 * 5 * 7 * 9 = = = = = 1 3 15 105 945 5. Buatlah program untuk menghitung perkalian nilai kolom dengan baris berikut tampilan keluaran yang diinginkan : 1 2 3 4 5 2 4 6 8 10 3 6 9 10 15 4 8 12 16 20 5 10 15 20 25 88 Pemrogramman C++ .+ 110 6. Buatlah program untuk menghitung perkalian deret bilangan genap membentuk segitiga siku terbalik dengan hasilnya : 10 10 10 10 10 + + + + 8 + 6 + 4 + 2 8 + 6 + 4 8 + 6 8 = 30 = 28 = 24 = 18 = 10 ---------.Bab 5 : Proses Perulangan 4.

1= ". cin>>a1.1.h Bentuk Penulisan : strcat(tujuan. cout<<"Hasil Penggabungannya "<<a1.h> <conio.h> main() { char a1[20]. getch(). cin>>a2. a2).Bab 6 : Opeasi String Pemrogramman C++ Bab 6 : Operasi String Penjelasan Operasi string selalu dijumpai didalam bahasa pemrograman. S.h> <string.1.h> <iostream. 6. } Frieyadie. clrscr(). cout<<"Masukkan Kata .h> <ctype.1.2= ". sumber).h dan ctype. File header yang harus disertakan adalah : string.Kom 89 . char a2[20]. Fungsi strcat() Penjelasan Fungsi ini digunakan untuk menambahkan string sumber kebagian akhir dari string tujuan. Contoh-1 #include #include #include #include #include <stdio. cout<<"Masukkan Kata . disini akan dibahasa beberapa perintah dan fungsi string. strcat(a1. Fungsi Manipulasi String Penjelasan Borland C++ menyediakan beberapa fungsi yang digunakan untuk keperluan menipulasi string. 6.

Hasil Contoh-2 90 Pemrogramman C++ . cout<<strcmp(a2.h> <string. getch(). cout<<strcmp(a1. clrscr().2.b1) <<endl. char b1[] = "BSI". Contoh -2 #include #include #include #include <stdio.1.h> main() { char a1[] = "BSI".a2)<<endl.2. File header yang harus disertakan adalah : string. cout<<strcmp(a1.a1) <<endl. Hasil Contoh-1 6. Fungsi strcmp() Penjelasan Fungsi ini digunakan untuk membandingkan string pertama dengan string kedua. cout<<"Hasil Perbandingan "<<a1<<" dan "<<a2<<"->".1. char a2[] = "Bsi".h Bentuk Penulisan : var_int = strcmp(str1. } Output yang akan dihasilkan. Hasil dari fungsi ini bertipe data integer (int). str2).h> <conio. cout<<"Hasil Perbandingan "<<a2<<" dan "<<a2<<"->".h> <iostream. dari program contoh-2 diatas adalah : Gambar 6. dari program contoh-1 diatas adalah : Gambar 6.Bab 6 : Operasi String Output yang akan dihasilkan. cout<<"Hasil Perbandingan "<<a1<<" dan "<<b1<<"->".

/* Proses */ strcpy(pindah. huruf). File header yang harus disertakan adalah : string. } Output yang akan dihasilkan. Fungsi strcpy() Penjelasan Fungsi ini digunakan untuk menyalin string asal ke-variabel string tujuan. cout<<"Masukkan Sembarang Kata = ". gets(huruf). Fungsi strlen() Penjelasan Fungsi ini digunakan untuk memperoleh banyaknya karakter dalam string.4.h. Gambar 6. char pindah[20].Bab 6 : Opeasi String 6. Bentuk Penulisan : strcpy(tujuan. Hasil Contoh-3 6.3. dengan syarat string tujuan harus mempunyai tipe data dan dan ukuran yang sama dengan string asal.1.h> <string. dari program contoh-3 diatas adalah : "<<pindah.h> <iostream.h Bentuk Penulisan : Frieyadie. S. asal). clrscr().1.h> main() { char huruf[20]. Contoh-3 #include #include #include #include <stdio.h> <conio. File header yang harus disertakan adalah : string.3.Kom 91 . cout<<"Pemindahannya = getch().

File header yang harus disertakan adalah : string. Hasil Contoh-4 6. dari program contoh-4 diatas adalah : Gambar 6. cout<<"Panjang Kata Yang Diinputkan = ".h> <iostream. getch().5.h> <string. Fungsi strrev() Penjelasan Fungsi ini digunakan untuk membalik letak urutan pada string.h> main() { char kata[20]. cout<<strlen(huruf).h> main() { char huruf[20].h Bentuk Penulisan : strrev(str). String urutan paling akhir dipindahkan keurutan paling depan dan seterusnya. clrscr(). cout<<"Masukkan Sembarang Kata = ".h> <conio. } Output yang akan dihasilkan. Contoh-4 #include #include #include #include <stdio. gets(huruf).h> <string.1.Bab 6 : Operasi String strlen(str). 92 Pemrogramman C++ . Contoh-5 #include #include #include #include <stdio.h> <conio. char pindah[20].4.h> <iostream.

a = angka + 5. gets(kata).Kom 93 .h> <conio.h #include #include #include #include <stdio.h> <math. } Output yang akan dihasilkan. b. getch(). S. angka = atof(kata). gets(kata).1. a.02 menyediakan beberapa fungsi yang digunakan untuk keperluan konfersi string. } Frieyadie.h> Contoh-6 main() { char kata[20]. getch(). cout<<"Hasil Perubahan ditambah dengan 5 = "<<a.h> <iostream. clrscr(). Fungsi Konfersi String Penjelasan Borland C++ 5. cout<<"Hasil Perubahan = "<<kata.Bab 6 : Opeasi String clrscr(). float angka. 6. dari program contoh-5 diatas adalah : Gambar 6. Hasil Contoh-5 6. strrev(kata). cout<<"Masukan Sembarang Kata = ".5.2.2. File header yang harus disertakan adalah : math. cout<<"Masukan Sembarang Kata berupa angka = ". Fungsi atof() Penjelasan Fungsi ini digunakan untuk mengubah string (teks) angka menjadi bilangan numerik float.

a. angka = atoi(kata).2.2. dari program contoh-6 diatas adalah : Gambar 6.7. clrscr(). Fungsi atoi() Penjelasan Fungsi ini digunakan untuk mengubah string (teks) angka menjadi bilangan numerik integer. float angka. getch().Bab 6 : Operasi String Output yang akan dihasilkan. Hasil Contoh-7 94 Pemrogramman C++ .6.h> <conio. Hasil Contoh-6 6.h> Contoh-7 main() { char kata[20]. b.h> <iostream. cout<<"Masukan Sembarang Kata berupa angka = ". cout<<"Hasil Perubahan ditambah dengan 5 = "<<a.h> <stdlib. dari program contoh-7 diatas adalah : Gambar 6. } Output yang akan dihasilkan.h #include #include #include #include <stdio. gets(kata). File header yang harus disertakan adalah : stdlib. a = angka + 5.

8. cout<<"Masukan Sembarang Kata berupa angka = ". Hasil Contoh-8 6. } Output yang akan dihasilkan. Fungsi strlwr() Penjelasan Fungsi ini digunakan untuk mengubah setiap huruf kapital ( huruf besar ) dalam string menjadi huruf kecil.2.h> <iostream.Bab 6 : Opeasi String 6. b. dari program contoh-8 diatas adalah : Gambar 6.h> <stdlib. clrscr(). a = angka + 5. Frieyadie. float angka. gets(kata). File header yang harus disertakan adalah : stdlib. getch(). Fungsi atol() Penjelasan Fungsi ini digunakan untuk mengubah string (teks) angka menjadi bilangan numerik long integer.3. a.h #include #include #include #include <stdio.4. cout<<"Hasil Perubahan ditambah dengan 5 = "<<a. angka = atol(kata).h> <conio. File header yang harus disertakan adalah : string.Kom 95 .h> Contoh-8 main() { char kata[20].h Bentuk Penulisan : strlwr(str).2. S.

h> main() { char kata[20].5. cout<<"Masukan Sembarang Kata dengan Huruf Besar =".9.Bab 6 : Operasi String Contoh-9 #include #include #include #include <stdio.h> <string. clrscr(). Hasil Contoh-9 6. } Output yang akan dihasilkan.h> main() { char kata[20].h> <conio.h> <conio.h Bentuk Penulisan : strupr(str). Contoh-10 #include #include #include #include <stdio. File header yang harus disertakan adalah : string. clrscr(). strlwr(kata). gets(kata).2. dari program contoh-9 diatas adalah : Gambar 6.h> <iostream. 96 Pemrogramman C++ . cout<<"Hasil Perubahan = "<<kata.h> <iostream.h> <string. Fungsi strupr() Penjelasan Fungsi ini digunakan untuk mengubah setiap huruf kecil dalam string menjadi huruf kapital ( huruf besar ). getch().

Bab 6 : Opeasi String cout<<"Masukan Sembarang Kata dengan Huruf Kecil=". Latihan Penjelasan Buatlah beberapa program seperti petunjuk berikut : 1. Hasil Contoh-10 6. Buatlah program untuk membalik kata berikut ini : Akademi Manajemen Informatika dan Komputer Bina Sarana Informatika Menjadi seperti berikut : akitamrofnI anaraS aniB retupmoK and akitamrofnI nemejanaM imedakA 3. cout<<"Hasil Perubahan = "<<kata. Bulatlah program untuk menggabungkan dua buah string Kalimat1 = Manajemen Kalimat2 = Informatika Menjadi seperti berikut : ManajemenInformatika Frieyadie. gets(kata). strupr(kata). getch(). dari program contoh-10 diatas adalah : Gambar 6.3. } Output yang akan dihasilkan. Buatlah program untuk menghitung panjang kata berikut ini : Akademi Manajemen Informatika dan Komputer Bina Sarana Informatika 2.10. S.Kom 97 .

Perkalian b.5" Kemudian kedua kalimat diatas dihitung menjadi perhitungan : a. Mencari sisa hasil pembagian 98 Pemrogramman C++ .6" Kalimat2 = "12. Pengurangan e. Penambahan d.Bab 6 : Operasi String 4. Pembagian c. Diberikan kalimat string berikut : Kalimat1 = "35.

hanya saja diikuti oleh suatu indek yang menunjukan jumlah maksimum data yang disediakan. dapat digolongkan menjadi tiga buah dimensi : • Array Berdimensi Satu. Untuk menyatakan jumlah maksimum elemen array. variabel array perlu dideklarasikan terlebih dahulu.Bab 7 : Array Pemrogramman C++ Bab 7 : Array Penjelasan Variabel Larik atau lebih dikenal dengan ARRAY adalah adalah Tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. Cara mendeklarasikan variabel array sama seperti deklarasi variabel yang lainnya. Array Berdimensi Satu Penjelasan Sebelum digunakan. Variabel array dalam Borland C++. Suatu Array mempunyai jumlah komponen yang banyaknya tetap. Jumlah Elemen Array Nama Array Tipe data elemen array 99 Frieyadie.Kom . Bentuk Umum pendeklarasian array : Deklarasi Array Tipe-Data Nama_Variabel[Ukuran] Keterangan : • Type Data • Ukuran : : Untuk menyatakan type data yang digunakan. • Array Berdimensi Dua • Array Berdimensi Dua 7. S.1. Contoh Pendeklarasian Array float Nil_Akhir[6]. Banyaknya komponen dalam suatu larik ditunjukan oleh suatu indek untuk membedakan variabel yang satu dengan variabel yang lainnya.

float nilai1[5]. Nil_Akhir[0]. Contoh-1 100 Pemrogramman C++ . float hasil[5].1. Elemen Array elemen elemen elemen elemen elemen elemen 1 0 2 1 3 2 4 3 5 4 6 5 Subscript / Index ARRAY NIL_AKHIR Subscript atau Index array pada C++. selalu dimulai dari Nol ( 0 ) 7. /* ---------------------------.Bab 7 : Array Suatu array dapat digambarkan sebagai kotak panjang yang berisi kotakkotak kecil didalam kotak panjang tersebut. float nilai2[5]. Mengakses Array Berdimensi Satu Penjelasan Suatu array. dapat diakses dengan menggunakan subscript atau indexnya: Bentuk umum pengaksesan dengan bentuk : Nama_Array[Subscript/Index] Contoh Nil_Akhir[3].*/ #include<conio.1. clrscr().h> #include<iomanip.*/ /* Program Array Satu Dimensi */ /* ---------------------------. char nama[5][20].h> main() { int i. Nil_Akhir[1].h> #include<iostream.h> #include<stdio.

cout<<"Nama Siswa : ". getch(). cout<<setprecision(2)<<" "<<hasil[i]<<endl. cout<<"Nilai Final : ".60). } Output yang akan dihasilkan. dari program contoh-1 diatas adalah : Gambar 7. cout<<endl.40)+ (nilai2[i] * 0. for(i=1. cout<<setprecision(2)<<" "<<nilai1[i]. cout<<"------------------------------------------". cout<<setiosflags(ios::left)<<setw(20)<<nama[i]. gets(nama[i]). cout<<"-------"<<endl. } cout<<"------------------------------------------".Bab 7 : Array for(i=1. cout<<"Nilai MidTest : ". cout<<setprecision(2)<<" "<<nilai2[i]. cout<<"Ujian"<<endl. cout<<"-------"<<endl.1.i++) { cout<<setiosflags(ios::left)<<setw(4)<<i."<<i<<endl.Kom 101 . cout<<"Hasil"<<endl. cin>>nilai2[i]. hasil[i] = (nilai1[i] * 0.i++) { cout<<"Data Ke . S.i<=2. cout<<"No.i<=2. Nama Siswa Nilai Nilai ". Hasil Contoh-1 Frieyadie. cout<<"-------"<<endl. } cout<<"------------------------------------------". cout<<" MidTest Final ". cin>>nilai1[i].

for(i=0. } Output yang akan dihasilkan. 87.7. Contoh-2 /* ----------------------------.1. clrscr().h> void main() { int nilai[5] = {56. Hasil Contoh-2 102 Pemrogramman C++ . 76."<<i<<" = ".Bab 7 : Array 7. 66.5. Bentuk pendefinisian suatu array dapat dilihat dari contoh berikut : Tipe_data nama_array[jml_elemen] = { nilai array }.*/ /* Inisialisasi Array Dimensi 1 */ /* ----------------------------. } getch(). 67.5.h> #include<iostream. i++) { cout<<"Nilai Array Index ke . 57. int i. dari program contoh-2 diatas adalah : Gambar 7.9 }.h> #include<iomanip. i<5.*/ #include<conio. Inisialisasi Array Berdimensi Satu Penjelasan Inisialisasi adalah memberikan nilai awal terhadap suatu variabel. 78.45.2. cout<<<a<<endl. Contoh float nilai[5] = {56. 72}.2. 98.

pendataan nilai dan lain sebagainya.Kom 103 . S. Array Berdimensi Dua Penjelasan Array dimensi dua tersusun dalam bentuk baris dan kolom.2. berikut dapat anda lihat pada tabel berikut : Data Penjualan Pertahun Tahun Penjualan 2001 2002 2003 150 159 230 100 125 150 210 125 156 Tabel 7.Bab 7 : Array 7. Bentuk Umum pendeklarasian array : Deklarasi Array Tipe-Data Nama_Variabel[index-1][index-2] Keterangan : • • • Type Data Index-1 Index-2 : : : Untuk menyatakan type data yang digunakan.1. Tabel Data Penjualan Pertahun No 1 2 3 Jika anda lihat dari tabel 7.1 diatas maka dapat dituliskan kedalam array dimensi dua berikut : int data_jual[3][3]. dimana indeks pertama menunjukan baris dan indeks kedua menunjukan kolom. Untuk menyatakan jumlah baris Untuk menyatakan jumlah kolom Contoh Pendeklarasian Array Sebagai contoh pendeklarasian yang akan kita gunakan adalah pengolahan data penjualan. Array dimensi dua dapat digunakan seperti pendatan penjualan. Jumlah Kolom Jumlah Baris Nama Array Tipe data elemen array Frieyadie.

h> #include<iomanip.j++) { cout<<"Data Ke .h> main() { int i.2. dapat diakses dengan menggunakan subscript atau indexnya Bentuk umum pengaksesan dengan bentuk : Nama_Array[index-1][index-2] Contoh Contoh-3 data_jual[2][2]. getch().j<=3. cout<<" ".*/ #include<conio. cout<<"NO 2001 2002 2003"<<endl. int data_jual[4][4]. j. cin>>data_jual[i][j].j<=3.i<=3. for(i=1. Mengakses Array Berdimensi Dua Penjelasan Suatu array. clrscr(). for(i=1. cout<<data_jual[i][j]. } cout<<"-----------------------"<<endl. cout<<"Jumlah Penjulan : ".h> #include<iostream."<<i<<" "<<j<<endl. } } cout<<"Data Penjualan Pertahun"<<endl. cout<<"-----------------------"<<endl. data_jual[1][2].Bab 7 : Array 7.i<=3.j++) { cout<<setiosflags(ios::right)<<setw(4).*/ /* Array Dimensi 2 */ /* ---------------. /* ---------------.h> #include<stdio. } 104 Pemrogramman C++ .i++) { for(j=1. for(j=1. cout<<"-----------------------"<<endl.i++) { cout<<setiosflags(ios::left)<<setw(5)<<i.1. } cout<<endl.

2. 3.Kom 105 . 2. Hasil Contoh-3 7. Inisialisasi Array Berdimensi Dua Penjelasan Inisialisasi adalah memberikan nilai awal terhadap suatu variabel. 5.h> #include<stdio. Contoh-4 /* ----------------------------.h> void main() Frieyadie. 4.*/ /* Inisialisasi Array Dimensi 2 */ /* ----------------------------. }. Bentuk pendefinisian suatu array dapat dilihat dari contoh berikut : Tipe_data nama_array[jml_elemen] = { nilai array }. 7}. Contoh int data[2][5] = { {2.h> #include<iostream. S. 2}. dari program contoh-3 diatas adalah : Gambar 7. 6.2.3.Bab 7 : Array Output yang akan dihasilkan. {4. 2.*/ #include<conio.

Hasil Contoh-4 7. Bentuk Umum pendeklarasian array : Tipe-Data Nama_Variabel[index-1][index-2][index-3] Deklarasi Array Keterangan : • Type Data • Index-1 • Index-2 • Index-3 : : : : Untuk menyatakan type data yang digunakan.i++) { for(j=0.Bab 7 : Array { int i.3. dari program contoh-4 diatas adalah : Gambar 7. 3. } cout<<endl. 2. 2. indeks kedua menunjukan kolom dan indeks ketiga menunjukan isi dari baris.4. dimana indeks pertama menunjukan baris. int data[2][5] = {{2. Array Berdimensi Tiga Penjelasan Array dimensi dua tersusun dalam bentuk baris. 7}}. Untuk menyatakan jumlah baris Untuk menyatakan jumlah isi dari baris Untuk menyatakan jumlah kolom Contoh Pendeklarasian Array Sebagai contoh pendeklarasian yang akan kita gunakan adalah pengolahan data penjualan. clrscr(). 2}.i<2. berikut dapat anda lihat pada tabel berikut : 106 Pemrogramman C++ . 4. cout<<" ". for(i=0. 5.j<5. j. 6. kolom dan isi dari baris. } getch(). {4. } Output yang akan dihasilkan.j++) { cout<<data[i][j].

h> #include<stdio.3. k.1. data_jualan[1][0][1]. Frieyadie.*/ /* Array Dimensi 3 */ /* ---------------. Contoh-5 /* ---------------. Tabel Data Penjualan Pertahun Jika anda lihat dari tabel 7.h> #include<iostream.h> main() { int i. S.Kom 107 .2. dapat diakses dengan menggunakan subscript atau indexnya Bentuk umum pengaksesan dengan bentuk : Nama_Array[index-1][index-2][index-3] Contoh data_jualan[1][1][1].2 diatas maka dapat dituliskan kedalam array dimensi dua berikut : int data_jualan[2][2][2].Bab 7 : Array Data Penjualan Pertahun Tabel 7. Jumlah Kolom Jumlah Isi Baris Jumlah Baris Nama Array Tipe data elemen array 7. j.*/ #include<conio.h> #include<iomanip. Mengakses Array Berdimensi Tiga Penjelasan Suatu array.

dari program contoh-5 diatas adalah : 108 Pemrogramman C++ . cout<<data_jual[i][j][k].j++) { for(k=0.i<2. cout<<"Tahun Hasil Tahun Penjualan Ke. cout<<"--------------------------------------". cout<<endl. cout<<endl. cout<<"--------------------------------------".i++) { for(j=0. cout<<"Jumlah Penjulan : ".j++) { cout<<setiosflags(ios::left)<<setw(11)<<i+1. } Output yang akan dihasilkan."<<i+1<<endl. } cout<<endl.k++) { cout<<"Data Tahun Ke . cout<<"Data Penjualan Pertahun"<<endl. Ke. clrscr().j<3.k<2. } cout<<"--------------------------------------"."<<j+1<<" "<<k+1<<endl. cin>>data_jual[i][j][k]. cout<<" 1 2 ". cout<<setiosflags(ios::left)<<setw(9)<<j+1. cout<<"Data Ke .j<3. cout<<endl. for(i=0. } cout<<endl.i<2.k<2. cout<<endl. } cout<<endl. cout<<endl. cout<<endl. for(i=0. ".k++) { cout<<setiosflags(ios::right)<<setw(5). for(k=0. getch(). } cout<<endl.i++) { for(j=0. cout<<"Ke.Bab 7 : Array int data_jual[2][3][2]. cout<<" ". --------------------". } cout<<endl.

Kom 109 . Hasil Contoh-5 Frieyadie. S.5.Bab 7 : Array Gambar 7.

365}. 375}. Bentuk pendefinisian suatu array dapat dilihat dari contoh berikut : Tipe_data nama_array[jml_elemen] = { nilai array }. cout<<"----------------------------------------" cout<<endl. 340. 580}} cout<<"----------------------------------------" cout<<endl. 460}}. cout<<"Ke.*/ /* Inisialisasi Array Dimensi 3 */ /* ----------------------------. {175. 340. 375. clrscr(). {275. k. Inisialisasi Array Berdimensi Tiga Penjelasan Inisialisasi adalah memberikan nilai awal terhadap suatu variabel. ----------------------" cout<<endl.h> main() { int i. 460}. 110 Pemrogramman C++ .2. 375. {250. {175. Contoh-6 /* ----------------------------. {250. }. 360}.*/ #include<conio.h> #include<iomanip. 380. 300}. cout<<" 2002 2003 2004 " cout<<endl. 460}}. 360}. 580}} 200. 480. {150.h> #include<iostream. {275.Bab 7 : Array 7. 275. 575}. 460}. float data[2][4][3] = { { {100. {280. Contoh float data[2][4][3] = { { {100.3. 275. 200. 240. { {160. 340. 575}. j. {250. {380. cout<<"Tahun Hasil Tahun Penjualan " cout<<endl. }. 375}. {150. { {160. 340. Ke. 300}. {250. 240. 250. 250.h> #include<stdio. 365}.

k++) { cout<<setiosflags(ios::right)<<setw(5). for(k=0.j<4. Hasil Contoh-6 Frieyadie. S. getch(). } cout<<endl.i<2. cout<<data[i][j][k]. } Output yang akan dihasilkan. cout<<setiosflags(ios::left)<<setw(9)<<j+1.6.j++) { cout<<setiosflags(ios::left)<<setw(9)<<i+1. cout<<" ".i++) { for(j=0. } cout<<"----------------------------------------" cout <<endl.Bab 7 : Array for(i=0.k<3. } cout<<endl. dari program contoh-6 diatas adalah : Gambar 7.Kom 111 .

.... ingin dibantu dibuatkan program untuk membantu kelancaran usahaannya. <diinput> <<Terus berulang tergantung Banyak Jenis>> Layar Keluaran GEROBAK FIRED CHICHEN ----------------------------------------------No... Jenis Harga Bayak Jumlah Potong Satuan Beli Harga ----------------------------------------------. <proses counter> Jenis Potong [D/P/S] : .... • Banyak Jenis... • Tampilan yang diinginkan sebagai berikut : Layar Masukkan GEROBAK FRIED CHICKEN --------------------Kode Jenis Harga -------------------------D Dada Rp.Bab 7 : Array 7. 2500 P Paha Rp.4. .... Pajak 10% Rp . Rp . ----------------------------------------------Jumlah Bayar Rp ....... Jenis Potong dan Banyak Beli diinput. 112 Pemrogramman C++ . 1500 -------------------------Banyak Jenis : . <diinput> Banyak Potong : . “GEROBAK FRIED CHICKEN” mempunyai daftar harga ayam sebagai berikut : Kode Jenis Harga ---------------------------------D Dada Rp.. 1 Sebuah perusahaan ayam goreng dengan nama “GEROBAK FRIED CHICKEN” yang telah lumayan banyak pelanggannya.. ... <diinput> Jenis Ke ... Total Bayar Rp . Latihan Penjelasan No. ... 1500 ---------------------------------Buatlah programnya dengan ketentuan : • Setiap pembeli dikenakan pajak sebesar 10% dari pembayaran......... 2500 P Paha Rp.. 2000 S Sayap Rp.. Rp ... ..... . . ... 2000 S Sayap Rp.

...... .. Nama Nilai Grade Mahasiswa ---------------------------Tugas UAS UAS Akhir ---------------------------------------------------.... . .. Nilai UTS dan Nilai UAS diinput...... S.... Nilai Tugas.... . <diinput> Mahasiswa Ke ... <diinput> Nilai UAS : . Dengan ketentuan sebagai berikut : • Nama Mahasiswa. . <diinput> Nilai Tugas : .. . <diinput> Nilai UTS : ........ ........Kom 113 .Bab 7 : Array Penjelasan No....... ...... ... ---------------------------------------------------- Frieyadie... .. .... . • Proses yang dilakukan untuk mendapatkan nilai murni dari masing-masing nilai. 2 Buatlah program untuk menghitung nilai akhir seorang siswa dari kursus yang diikutinya.... adalah • Nilai Murni Tugas = Nilai Tugas dikalikan dengan 30% • Nilai Murni UTS = Nilai UTS dikalikan dengan 30% • Nilai Murni UAS = Nilai UAS dikalikan dengan 40% • Nilai Akhir adalah Nilai Murni Tugas + Nilai Murni UTS + Nilai Murni UAS • Ketentuan untuk mendapatkan grade nilai : • Nilai Akhir >= 80 mendapat Grade A • Nilai Akhir >= 70 mendapat Grade B • Nilai Akhir >= 59 mendapat Grade C • Nilai Akhir >= 50 mendapat Grade D • Nilai Akhir < 50 mendapat Grade E Tampilan yang diinginkan sebagai berikut : • Layar Masukkan PROGRAM HITUNG NILAI AKHIR MATERI PEMROGRAMMAN C++ Masukkan Jumlah Mahasiswa : . <diinput> <<Terus berulang tergantung Jumlah Mahasiswa>> Layar Keluaran DAFTAR NILAI MATERI : PEMROGRAMMAN C++ ---------------------------------------------------No... ... <proses counter> Nama Mahasiswa : ...

. .... 700. ---------------------------------------------------------------Total Gaji yang dikeluarkan Rp........ Honor lembur diberikan jika jumlah jam kerja sebih dari 240 jam.. . ... maka kelebihkan jam kerja tersebut dikalikan dengan honor lembur perjam sebesar Rp...5% 5% 7. 2..• Tunjangan Pendidikan Kode Pendidikan 1 SMU 2 D3 3 S1 Persentase 2. <proses counter> Nama Karyawan : . 114 Pemrogramman C++ .000.. . <di Golongan (1/2/3) : ..... 3 PT. .. .. STAY COOL ---------------------------------------------------------------No.......000.... ....Honor Pendapatan Jabatan Pdidikan Lembur Pajak Bersih ---------------------------------------------------------------. STAY COOL.. dengan memperoleh tujangan-tunjangan sebagai berikut : • Tunjangan Jabatan Golongan Persentase 1 5% 2 10% 3 15% Sebagai contoh : Jika seorang keryawan tersebut dengan golongan 3... ....per bulan. <di Jumlah Jam Kerja : ....... <di input> input> input> input> <<Terus berulang tergantung Jumlah Karyawan>> PT..Bab 7 : Array Penjelasan No......5% • Honor Lembur Jumlah jam kerja normal dalam satu bulan sebanyak 240 Jam Kerja.... maka mendapatkan tunjangan sebesasr 15% * Rp. .. . . .... <diinput> Karyawan Ke . STAY COOL Masukkan Jumlah Karyawan : ... ...... <di Pendidikan (1=SMU/2=D3/3=S1) : ........ Tampilan yang diinginkan sebagai berikut : • Layar Masukkan dan Keluaran Program Hitung Honor Karyawan Kontrak PT.... Nama Tunjangan Karyawan ----------------....... memberikan Honor tetap kepada karyawan kontraknya sebesar Rp. 700.... ...500 untuk setiap kelebihan jam kerja dalam satu bulannya.

Pada umumnya kita tidak dapat menentukan dimana variabel akan ditempatkan Terkadang secara otomatis dilakukan oleh kompiler dan sistem operasi yang sedang aktif. Sebagai contoh ILHAM ditempatkan pada memori dengan alamat 0x0012ff88 dan dideklarasikan sebagai berikut : ILHAM = 75. Hal ini dapat dilakukan dengan memberikan suatu identifier “&” (ampersand sign) didepan nama variabel. tetapi sesekali sistem operasi akan memberikan banyak alamat yang kita tidak mengetahui dimana variabel ditempatkan.1.1. // RAKA sama dengan Address Of ILHAM (0x0012ff88) Frieyadie. Operator Pointer Penjelasan Terdapat dua macam operator pointer yang disediakan oleh Borland C++: 1. suatu variabel akan menghasilkan alamat lokasi memori. // AMIR sama dengan ILHAM (75) RAKA = &ILHAM. 8.Kom 115 . S. operator ini biasa disebut dengan “address of” atau operator alamat.1. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah. Operator dereference ( & ) 2. Operator reference ( * ) 8.Bab 8 : Pointer Pemrogramman C++ Bab 8 : Pointer Penjelasan Merupakan sebuah variabel yang berisi alamat dari variabel lain. Dengan menggunakan operator dereference ( & ) ini. Operator Dereference ( & ) Penjelasan Didalam mendeklarasikan suatu variabel harus pada lokasi yang pasti didalam penggantian memori. AMIR = ILHAM.

Bab 6 : Pointer Gambar 8. Diagram Pengunaan Opeator Dereference 8. agar dapat menterjemahkan nilai sebenarnya dari suatu variabel. Operator Reference ( * ) Penjelasan Dengan menggunakan operator anda dapat mengakses secara langsung nilai yamg terdapat didalam variabel yang berpointer.1.2 Diagram Pengunaan Opeator Reference 116 Pemrogramman C++ . RAKA = &ILHAM.2. menghasilkan nilai yang berada pada suatu alamat memori Sebagai contoh ILHAM ditempatkan pada memori dengan alamat 65524 dan dideklarasikan sebagai berikut : ILHAM = 75. hal ini dapat dilakukan dengan menambahkan identifier asterisk ( * ). Operator ini biasa disebut dengan “value pointed by”. Dengan menggunakan operator reference ( * ) ini. // RAKA sama dengan Address Of ILHAM (0x0012ff88) RAFLI = *RAKA. // RAFLI sama dengan value pointed by RAKA(75) Gambar 8.1.

Pesan Kesalahan Yang Tampil adalah : Cannot modify a const object Error Message yang akan dihasilkan. Untuk mendeklarasikan pointer secara konstanta dengan memberikan kata const didepan nama konstanta. cout<<"Nama Program = "<<nama<<endl. nama = "Visual C++".Bab 8 : Pointer 8. penyebabnya pada pernyataan nama = "Visual C++".3 Error Message Contoh-1 Frieyadie. clrscr(). } Pada program diatas. Bentuk penulisan : tipe_data * const nama_konstanta.h> #include<conio. Gambar 8. merupakan merupakan pointer konstanta. Deklarasi Pointer Pada Konstanta Penjelasan Suatu pointer dapat dideklarasikan secara konstanta atau secara tetap tidak dapat diubah.h> void main() { char *const nama = "Borland C++". yaitu tidak dapat diubahubah. cout<<"Nama Program getch(). dari program contoh-1 diatas adalah: = "<<nama<<endl. terdapat kesalahan dan tidak dapat dijalankan. Contoh-1 //----------------------------------// //Pendeklarasian Pointer Konstanta // //----------------------------------// #include<stdio.Kom 117 .2.h> #include<iostream.. S. Karena variabel nama.

amir = ilham. cout<<"Nilai ILHAM = "<<ilham<<endl.3. memeriksa satu persatu data yang memiliki pointer pada saat variabel tersebut pertama kali dideklarasikan. Deklarasi Pointer Pada Variabel Penjelasan Karena keakhlian dari pointer untuk menunjuk secara langsung kesuatu nilai. ilham = 75.4 Hasil Contoh-2 118 Pemrogramman C++ .h> #include<conio.h> #include<iostream. } Output yang akan dihasilkan.h> main() { int ilham. raka = &ilham. *raka. clrscr(). amir. getch(). dari program contoh-2 diatas adalah : Gambar 8. cout<<"Nilai RAKA = "<<raka<<endl. cout<<"Nilai AMIR = "<<amir<<endl. Contoh-2 //-------------------------------// //Penggunaan Pointer Dereference // //-------------------------------// #include<stdio. Bentuk penulisan : tipe_data *nama_konstanta.Bab 6 : Pointer 8.

h> main() { int ilham. ilham = 75. S.Bab 8 : Pointer Contoh-3 //-----------------------------// //Penggunaan Pointer Reference // //-----------------------------// #include<stdio.*/ /* Perubahan Nilai dengan Pointer */ /* -----------------------------. int *hadiansyah . getch(). clrscr(). hadiansyah = &yofrie.h> #include<iostream.Kom 119 .h> #include<conio. dari program contoh-3 diatas adalah : Gambar 8. rafli = *raka. cout<<"Nilai ILHAM = "<<ilham<<endl. Frieyadie.h> #include<iostream. clrscr(). cout<<"Nilai awal yofrie = "<<yofrie<<endl. rafli. raka = &ilham.5 Hasil Contoh-3 Contoh-4 /* -----------------------------. cout<<"Nilai RAKA = "<<raka<<endl.*/ #include<conio. *raka.h> main() { int yofrie = 93. } Output yang akan dihasilkan. cout<<"Nilai RAFLI = "<<rafli<<endl.

Sebagai contoh : char ilham. pointer dapat pula menunjuk ke pointer lainnya. } Output yang akan dihasilkan. amir = &raka. hanya menambahkan pointer reference ( * ) pada variabel yang akan ditunjuk. raka = &ilham. char **amir. Gambar 8. //pointer ke variabel //pointer pada pointer ilham = '75'. Didalam pendeklarasianya. cout<<"Nilai hadiansyah sekarang = ". dari program contoh-4 diatas adalah : Gambar 8.6 Hasil Contoh-4 8. getch(). *hadiansyah = 50.Bab 6 : Pointer cout<<"Nilai hadiansyah sekarang = ". cout<<*hadiansyah<<endl.7 Diagram Pengunaan Pointer Pada Pointer 120 Pemrogramman C++ .4. Pointer Pada Pointer Penjelasan Tidak terbatas menunjuk alamat dari suatu variabel. cout<<*hadiansyah<<endl. char *raka.

Bab 8 : Pointer Contoh-5 // -----------------------------// //Penggunaan Pointer to Pointer // //------------------------------// #include<stdio. int **amir. amir = &raka. } = ". cout<<"Nilai AMIR Hasil Mengakses ILHAM cout<<**amir<<endl. cout<<"Nilai ILHAM = "<<ilham<<endl. ilham = 75. getch().Kom 121 .h> main() { int ilham. //-> Penugasan Ke Alamat Memori raka = &ilham.h> #include<iostream. = ".8 Hasil Contoh-5 Frieyadie.h> #include<conio. cout<<"Nilai RAKA Hasil Mengakses ILHAM cout<<*raka<<endl. dari program contoh-5 diatas adalah : Gambar 8. S. //pointer ke variabel //pointer pada pointer Output yang akan dihasilkan. int *raka. clrscr().

cout<<&ptrnilai[i]. Sebagai contoh sederhana dapat anda lihat pada contoh program berikut : //------------------------------// //Penggunaan Pointer to Array // //------------------------------// #include<stdio. pada array.i++) { cout<<"Elemen "<<i<<". dari program contoh-6 diatas adalah : Contoh-6 122 Pemrogramman C++ . } cout<<endl.i++) { cout<<"Masukan Nilai Pertama = ".Bab 6 : Pointer 8. } Output yang akan dihasilkan. cin>>nilai[i]. int nilai[5]. for(i=1. for(i=1. int *ptrnilai. ptrnilai = nilai.5.h> main() { int i. karena secara internal array juga menyatakan alamat. yaitu pengenal array sama dengan alamat pada elemen pertama. cout<<endl<<endl. } getche(). cout<<endl. Menempati Alamat Memori = ". cout<<"Pointer". Nilai "<<nilai[i].h> #include<conio. cout<<"Hasil Pengaksesan Elemen Array Lewat".h> #include<iostream.i<=5. Pointer pada Array Penjelasan Konsep Array diantaranya adalah banyak loncatan dari pointer satu ke pointer yang lain.i<=5. cout<<".

cout<<"Nama Band Punk = "<<band_punk. dari program contoh-7 diatas adalah : Frieyadie. cout<<"Nama Band Metal = "<<band_metal<<endl. char *band_punk = "RANCID".*/ /* Pointer pada String */ /* ------------------.h> #include <conio. } Output yang akan dihasilkan.9 Hasil Contoh-6 8. //menambah nilai penunjuk / pointer cout<<"Nama Band Metal = "<<band_metal<<endl.Bab 8 : Pointer Gambar 8. band_punk+=3.*/ #include <iostream. Pointer pada String Penjelasan Contoh-7 Pointer pada string dapat anda lihat pada contoh program berikut : /* ------------------.6. S. getche(). cout<<"Nama Band Punk = "<<band_punk.h> main() { char band_metal[] = "SEPULTURA".Kom 123 .

karena sudah terjadi penambahan dengan 3. R A N C I D \0 1 2 3 4 5 6 124 Pemrogramman C++ .4. secara default. terdapat perubahan nilai pointer band_punk .10 Hasil Contoh-7 Pada program diatas. yang di tunjukkan oleh penambahan nilai pointer pada band_punk+=3. sehingga tercetak kata CID.Bab 6 : Pointer Gambar 8. pembacaan dilakukan mulai dari pointer pertama. maka pembacaan berpindah ke alamat ke.

Argumen boleh diisi dengan suatu data atau dibiarkan kosong. Argumen. - - Pada pemanggilan sebuah fungsi. cout() yang mempunyai tugas untuk menampilkan informasi atau data kelayar dan masih banyak lainnya. boleh dituliskan secara bebas dengan ketentuan. diletakan diantara tanda kurung ‘{ }’. } Keterangan: Nama fungsi. yang bersifat mutlak. 9. Struktur Fungsi Penjelasan Sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut : nama_fungsi(argumen) { … pernyataan / perintah. karena fungsi ini program akan dimulai.Kom 125 . sehingga mudah dipahami dan dapat lebih dikembangkan. . sebagai contoh yang lainnya fungsi printf(). Pernyataan / perintah. cukup dengan menuliskan nama fungsinya. Contoh pembuatan fungsi sederhana Frieyadie. tidak menggunakan spasi dan nama-nama fungsi yang mempunyai arti sendiri. diletakan diantara tanda kurung “( )” yang terletak dibelakang nama fungsi. … pernyataan / perintah. Kegunaan dari fungsi ini adalah untuk: . … pernyataan / perintah.Mengurangi pengulangan penulisan program yang berulangan atau sama.1.Bab 9 : Fungsi Pemrogramman C++ Bab 9 : Fungsi Penjelasan Fungsi (Function) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus.Program menjadi lebih terstruktur. Fungsi-fungsi yang sudah kita kenal sebelumnya adalah fungsi main(). S.

• Jika jumlah parameter yang digunakan dalam definisi fungsi dan pada saat pemanggilan fungsi berbeda atau tidak sama. 126 Pemrogramman C++ . Prototipe Fungsi Penjelasan Prototipe fungsi digunakan untuk mendeklarasikan ke kompiler mengenai: • Tipe data keluaran dari fungsi. garis().h> #include<iostream. //memanggil fungsi garis cout<<"AMIK BSI . • Jumlah parameter yang digunakan • Tipe data dari masing-masing parameter yang digunakan. } /* program utama */ main() { clrscr(). Hasil Contoh-1 9. } Output yang akan dihasilkan. maka akan menunjukkan kesalahan. garis(). Keuntungan didalam pemakai prototipe yaitu : • Kompiler akan melakukan konversi antara tipe parameter dalam definisi dan parameter fungsi. dari program contoh-1 diatas adalah : Gambar 9.h> #include<stdio.2.Bab 9 : Fungsi Contoh-1 /* pembuatan fungsi garis() #include<conio.1.h> */ garis() { printf("\n----------------------\n"). //memanggil fungsi garis getche()..Pondok Labu"<<endl.

Bab 9 : Fungsi Contoh prototipe fungsi : Nama-fungsi float total ( float a. float b). Parameter Fungsi Penjelasan Terdapat dua macam para parameter fungsi. Bentuk penulisan Parameter Formal dan Parameter Aktual. float b) Tidak menggunakan titik koma parameter b Tipe parameter b parameter a Tipe parameter a Tipe keluaran fungsi 9.Kom 127 . Ada dua cara untuk melewatkan parameter ke dalam fungsi. Sebagai contoh pada pendefinisian berikut : float total(a. di-akhiri titik koma Tipe data parameter kedua Tipe data parameter pertama Tipe data keluaran fungsi Bentuk definisi dalam penggunaan fungsi yang dideklarasikan dengan menggunakan prototipe. Parameter Aktual adalah variabel yang digunakan pada pemanggilan suatu fungsi. b. b) float a. yaitu berupa : Frieyadie. harus diubah.3. yaitu : • • Parameter formal adalah variabel yang terdapat pada daftar parameter yang berada didalam definisi fungsi. S. Bentuk pendefinisian diatas harus diubah menjadi bentuk modern pendefinisian fungsi : Nama fungsi float total(float a.

int n).1. cout<<endl.Bab 9 : Fungsi 9. cout<<"\na = "<<a<<" b = "<<b. } 128 Pemrogramman C++ . cout<<"\n\nNilai di dalam Fungsi Tambah()". Berikut contoh pemanggilan dengan nilai dapat dilihat pada contoh berikut . a = 5. Dengan cara ini nilai parameter aktual tidak bisa berubah. walaupun nilai dari parameter formal berubah. cout<<"\nNilai Setelah Fungsi Digunakan". } tambah(int m. Pemanggilan dengan nilai ( Call by Value ) Penjelasan Pada pemanggilan dengan nilai yaitu nilai dari parameter aktual akan dimasukkan keparameter formal.h> tambah(int m. getch(). int n) { m+=5. b. main() { int a.h> #include<stdio. b = 9. n+=7. clrscr().b). cout<<"\nm = "<<m<<" n = "<<n. cout<<"\na = "<<a<<" b = "<<b. cout<<"Nilai Sebelum Fungsi Digunakan ". /* /* /* /* -----------------------Penggunaan Call By Value Program Tambah Nilai -----------------------*/ */ */ */ Contoh-2 #include<conio. tambah(a.h> #include<iostream.3.

dari program contoh-2 diatas adalah : Gambar 9. Pemanggilan Reference) Penjelasan dengan Referensi (Call by Pemanggilan dengan reference merupakan pemanggilan alamat suatu variabel didalam fungsi. } Frieyadie. clrscr(). b. S.Kom 129 .h> tambah(int *c. a = 4. /* /* /* /* ---------------------------Penggunaan Call By Reference Program Tambah Nilai ---------------------------*/ */ */ */ Contoh-3 #include<conio. cout<<"\na = "<<a<<" b = "<<b.&b).2.3. cout<<endl. cout<<"\na = "<<a<<" b = "<<b. tambah(&a. getch(). int *d). b = 6.h> #include<iostream. Cara ini dapat dipakai untuk mengubah isi suatu variabel yang diluar dari fungsi dengan melaksanakan pengubahan nilai dari suatu variabel dilakukan didalam fungsi. main() { int a.h> #include<stdio. cout<<"\nNilai Setelah Pemanggilan Fungsi". Hasil Contoh-2 9.Bab 9 : Fungsi Output yang akan dihasilkan. cout<<"Nilai Sebelum Pemanggilan Fungsi".2.

main() { int a. clrscr(). /* -------------------------. Contoh pemakaian pernyataan return() dapat dilihat pada contoh berikut . b = 5.h> #include<stdio. *d+=5. getch().4.*/ #include<conio. Pernyataan return() diikuti oleh argumen yang berupa nilai yang akan dikirimkan.h> #include<iostream. } 130 Pemrogramman C++ //prototype fungsi tambah Contoh-4 . dari program contoh-3 diatas adalah : Gambar 9. Pernyataan return(). int *d) { *c+=7.3. Hasil Contoh-3 9. cout<<endl. a = tambah(&b).Bab 9 : Fungsi tambah(int *c. cout<<"\nNilai di Akhir Fungsi Tambah()". cout<<"Nilai Setelah Pemanggilan Fungsi adalah "<<a.*/ /* Penggunaan Fungsi return() */ /* -------------------------. Penjelasan Digunakan untuk mengirimkan nilai atau nilai dari suatu fungsi kepada fungsi yang lain yang memanggilnya.h> tambah(int *c). } Output yang akan dihasilkan. cout<<"\nc = "<<*c<<" d = "<<*d.

dapat dilihat dari program berikut : /* -----------------------.1.*/ /* Pengriman data Konstanta */ /* -----------------------. S. dari program contoh-4 diatas adalah : Gambar 9.Bab 9 : Fungsi tambah(int *c) //fungsi tambah { return(*c+=2). clrscr().5.4. } luas(float sisi) { return(sisi*sisi).5. luas_bs = luas(4. Hasil Contoh-4 9.Kom 131 Contoh-5 . getch().h> luas(float sisi). Pengiriman Data Ke Fungsi 9. cout<<"\nLuas Bujur Sangkar = "<<luas_bs. Pengiriman Data Konstanta Ke Fungsi. } Keterangan : Frieyadie.h> #include<stdio. main() { float luas_bs.*/ #include<conio. Penjelasan Mengirimkan suatu nilai data konstanta ke suatu fungsi yang lain dapat dilakukan dengan cara yang mudah. } Output yang akan dihasilkan.h> #include<iostream.25).

cout<<"\nMenghitung Luas Bujur Sangkar"<<endl. cout<<"\nLuas Bujur Sangkar = "<<luas_bs<<" Cm". main() { float luas_bs. untuk diolah lebih lanjut. sama seperti halnya pengiriman suatu nilai data konstanta ke suatu fungsi. Pengiriman Data Variabel Ke Fungsi Penjelasan Bentuk pengiriman data Variabel. clrscr().*/ /* Pengriman data Variabel */ /* -----------------------. setelah itu hasil perkalian tersebut dikirim balik ke variabel luas_bs yang memanggil fungsi.Bab 9 : Fungsi Dalam struktur program diatas dilihat bahwa.h> #include<iostream.5. dari program contoh-5 diatas adalah : Gambar 9. yang nilai tersebut akan ditampung pada variabel sisi.5.2. akan dikirimkan nilai kepada fungsi luas(). getch(). Output yang akan dihasilkan. sisi_bs. Bentuk pengiriman tersebut dapat dilihat dari program berikut : /* -----------------------. cin>>sisi_bs.h> luas(float sisi). pernyataan luas_bs=luas(4. Selanjutnya didalam fungsi return terjadi perkalian sisi dengan sisi. hanya saja nilai yang dikirimkan tersebut senantiasa dapat berubah-ubah. cout<<"\nMasukan Nilai Sisi Bujur Sangkar : ". Hasil Contoh-5 9. luas_bs = luas(sisi_bs). } 132 Contoh-6 Pemrogramman C++ .25).*/ #include<conio.h> #include<stdio.

dari program contoh-6 diatas adalah : Gambar 9.Kom 133 Contoh-7 .1.6. Terdapat beberapa jenis variabel yaitu: • Variabel Lokal.h> #include<stdio. Hasil Contoh-6 9.*/ #include<conio. • Variabel Statis. 9.6. cout<<"Pemanggilan Variabel Lokal"<<endl. } Output yang akan dihasilkan.Bab 9 : Fungsi luas(float sisi) { return(sisi*sisi). Variabel lokal biasa disebut dengan Variabel Otomatis. clrscr().6. • Variabel Eksternal atau Global. S.*/ /* Variabel Lokal */ /* -------------. /* -------------. Jenis Variabel Penjelasan Jenis Variabel pada C++ ini sangat berguna didalam penulisan suatu fungsi agar penggunaan didalam penggunaan suatu variabel tidak salah.h> #include<iostream. main() { int a = 15. Frieyadie. Variabel Lokal Penjelasan Variabel Lokal adalah variabel yang dideklarasikan didalam fungsi dan hanya dikenal oleh fungsi yang bersangkutan.h> lokal().

2. getch().h> int a = 6. } Hal ini terlihat bahwa variabel a yang berada diluar fungsi local tidak dikenal oleh fungsi local. diluar dari fungsi main(). cout<<"\nNilai didalam funsi main() = : "<<a.*/ /* Variabel Eksternal atau Global */ /* -----------------------------. dari program contoh-7 diatas adalah : Gambar 9. Output yang akan dihasilkan. Hasil Contoh-7 9.6. Variabel Eksternal Penjelasan Variabel Eksternal adalah variabel yang dideklarasikan diluar fungsi yang bersifat global yang artinya dapat digunakan bersama-sama tanpa harus dideklarasikan berulang-ulang. } lokal() { int a = 10. 134 Pemrogramman C++ . cout<<"\nNilai a didalam fungsi lokal() = "<<a.Bab 9 : Fungsi cout<<"\nNilai didalam funsi main() = : "<<a. /* -----------------------------.h> #include<stdio. lokal(). Untuk pendeklarasian variabel ekternal ini. //--> deklarasi variabel eksternal Contoh-8 void lokal(). yang selama ini pendeklarasian variabel selalu didalam fungsi main().h> #include<iostream.*/ #include<conio.7.

dari program contoh-8 diatas adalah : Gambar 9.Kom 135 . lokal(). Suatu variabel statis diperoleh dengan menambahkan kata-kunci static didepan penentu tipe data variabel. maka variabel dapat dipergunakan oleh semua fungsi yang terletak pada file yang sama ditempat variabel statis dideklarasikan. cout<<a. } void lokal() { a+=10. Jika variabel statis bersifat eksternal. maka variabel hanya dikenal oleh fungsi tempat variabel dideklarasikan. cout<<"\nNilai didalam funsi main() = : "<<a. //--> pemanggilan fungsi local cout<<"\nNilai Setelah penggilan fungsi local() = ". S. Frieyadie. } Hal ini terlihat bahwa variabel a yang dideklarasikan diluar fungsi main().8. • • • Jika variabel statis bersifat local. dapat digunakan didalam fungsi main() dan fungsi local().Bab 9 : Fungsi void main() { clrscr(). Variabel Statis Penjelasan Variabel Statis dapat berupa variabel local atau variabel eksternal Sifat variabel statis ini mempunyai sifat antar lain. Output yang akan dihasilkan. Jika tidak ada inisialisasi oleh pemrograman secara otomatis akan diberikan nilai awal nol. cout<<"Penggunaan Variabel Eksternal"<<endl. Hasil Contoh-8 9. getch().3.6.

getch(). tercetak nilai variabel k = 8. maka secara otomatis variabel k = 0. walah(). tercetak nilai variabel k = 4. clrscr().h> walah().*/ /* Penggunaan Variabel Statis */ /* -------------------------.Bab 9 : Fungsi Contoh-9 /* -------------------------.*/ #include<conio. Output yang akan dihasilkan. adalah 5. karena nilai k yang terbaru adalah 4. • Pada pemanggilan fungsi walah() kedua.h> #include<iostream. dari program contoh-9 diatas adalah : Gambar 9. walah(). didalam fungsi main() bersifat lokal. cout<<"\nNilai K didalam fungsi() = "<<k. } walah() { static int k.h> #include<stdio. didapat dari k=0+4. karena variabel k. Hasil Contoh-9 136 Pemrogramman C++ . // --> deklarasi variabel statis k += 4. • Pada pencetakan k didalam fungsi main().9. } Hal ini terlihat bahwa : • Pada pada prototipe fungsi walah() tidak tedapat nilai awal. cout<<"\nNilai K didalam fungsi main() = "<<k. didapat dari k=4+4. • Pada pemanggilan fungsi walah() pertama. //--> prototipe fungsi walah main() { int k = 5.

} Output yang akan dihasilkan. dari program contoh-10 diatas adalah : Contoh-10 Gambar 9.10.Kom . Hasil Contoh-10 Contoh-11 /* -------------------------. int j) { return(i * j). while dan do – while. } main() { int k.h> #include<iostream. getch(). k*2)<<" ".*/ /* Penggunaan inlide function */ /* -------------------------.*/ 137 Frieyadie. Fungsi inline Penjelasan Fungsi inline ( inline function ) digunakan untuk mengurangi lambatnya eksekusi program dan mempercepat eksekusi program terutama pada program yang sering menggunakan atau memanggil fungsi yang berlebih. terutama program-program yang menggunakan pernyataan perulangan proses seperti for.*/ #include<conio.h> #include<stdio. k++) cout<<kali(k. Inline function dideklarasikan dengan menambahkan kata kunci inline didepan tipe data. /* -------------------------.7. k < 20.Bab 9 : Fungsi 9. for(k = 1. clrscr().h> inline int kali(int i. S.*/ /* Penggunaan inlide function */ /* -------------------------.

} { cout << "Mari Belajar. cout << "C++ Programming. ". } getche().\n\n". Pemrogramman C++ 138 .h> inline static void cplusplus() { cout << "Pemrogramman C++\n".8. dari program contoh-11 diatas adalah : Gambar 9. Dapat diartikan bahwa fungsi yang overload berarti menyediakan versi lain dari fungsi tersebut. cout << "Sedang Kami Pelajari. cplusplus(). Hasil Contoh-11 9. ".\n\n".Bab 9 : Fungsi #include<conio. } { cout << "Jika Sudah Mengerti. sehingga memiliki nama yang sama tetapi dengan parameter yang berbeda. cout << "Mudah Untuk Dipelajari. Sebagai contoh membentuk fungsi yang sama dengna tipe yang berbedabeda dan dibuatkan pula nama fungsi yang berbeda-beda pula. cplusplus(). ". Salah satu kelebihan dari C++ adalah Overloading. Function Overloading Penjelasan Function Overloading adalah mendefinisikan beberapa fungsi. ".11.h> #include<stdio. } Output yang akan dihasilkan. cout << "Berarti Sudah Anda Kuasai".h> #include<iostream. } int main() { { cout << "Kami Sedang Belajar. cplusplus().

Kom 139 . Hasil Contoh-12 Frieyadie. cout<<hitung(2)<<endl. cout<< "Hasilnya Fungsi overload -3 : ". getch().h> #include<iostream. cout<< "Hasilnya Fungsi overload -1 : ".Bab 9 : Fungsi Contoh-12 /* ------------------------------. void main() { clrscr(). S.*/ /* Penggunaan function overloading */ /* ------------------------------. dari program contoh-12 diatas adalah : Gambar 8. float hitung(float d).h> int hitung(int b).*/ #include<conio. cout<<hitung(3)<<endl. } Output yang akan dihasilkan.h> #include<stdio. cout<<hitung(4)<<endl.12. long hitung(long c). } double hitung(double d) { return(d*d). } long hitung(long c) { return(c*c). cout<< "Hasilnya Fungsi overload -2 : ". } int hitung(int b) { return(b*b).

maka tidak mendapat diskon. c = 37. • Untuk fungsi pertama variabel yang digunakan adalah double • Untuk fungsi pertama variabel yang digunakan adalah float • Untuk fungsi pertama variabel yang digunakan adalah integer 3. 5. ………< hasil proses > Besar harga yang harus dibayarkan Rp. ………. <di input > Besar diskon yang diberikan Rp. dengan ketentuan sebagai berikut : .000.000. . 1. dengan variabel untuk masing-masing fungsi berbeda-beda. Rumus konversi yang digunakan adalah c = (f .000 . Gunakan Function Overloading.000. 5.9.000.000.000 .7778 Hasil keluaran yang diinginkan : Pemanggilan dengan tipe data double Proses dengan tipe data double 100 sama dengan 37.7778 140 Pemrogramman C++ . sampai dengan Rp. 2 Penjelasan No. Contoh : Jika nilai Fahrenheit = 100 c = (100 .Jika belanja diatas Rp.32) * 5 / 9.32. 2. ………< hasil proses > Penjelasan No. Buatlah program untuk menghitung besarnya diskon yang diberikan atas besanya sejumlah pembelian. 1 Buatlah program menghitung luas dan keliling lingkaran dengan menggunakan fungsi. c = (68) * 5 / 9. 3 Buatlah program untuk menghitung konversi dari derajat fahrenheit ke celcius Petunjuk : 1. Fungsi yang harus dibuat luas() untuk menghitung luas lingkaran dan keliling() untuk menghitung luas lingkaran. 1.Bab 9 : Fungsi 9. Besar pembelian barang Rp. Latihan Penjelasan No. Dengan tampilan yang diinginkan sebagai berikut : Program Hitung Potongan.Jika belanja dimulai dari Rp. Buatlah 3 (tiga) buah fungsi untuk dioverloading. Fungsi yang harus dibuat potong() untuk menghitung besar potongan yang akan diberikan. maka mendapat diskon sebesar 20%.Jika belanja dibawah Rp. .0) * 5 / 9. maka mendapat diskon sebesar 35%.000.

. <hasil proses> Jumlah Bayar Penyewaan Sebesar Rp. <diinput> Banyak Pinjam : ...... . <hasil proses> Frieyadie. ... <diinput> Kode Buku [C/K/N] : .. S. 4 Buatlah program untuk menghitung jumlah pembayaran pada perpustakaan "Kecil-Kecilan"....7778 Pemanggilan dengan tipe data integer Proses dengan tipe data integer 100 sama dengan 37 Penjelasan No..Bab 9 : Fungsi Pemanggilan dengan tipe data float Proses dengan tipe data float 100 sama dengan 37.Kecil-Kecilan"...... <diinput> Tampilan Keluaran yang diinginkan : Tarif Sewa Rp... < hasil proses > Penyewa dengan Nama . ---------------------------Nama Penyewa Buku : .. Mempunyai ketentuan sebagai berikut: Kode Jenis Buku C K N Jenis Buku CerPen ( Kumpulan Cerita Pendek ) Komik Novel Tarif Buku 500 700 1000 Petunjuk Proses : • • Buatlah Fungsi Tarif untuk menentukan terif penyewaan Gunakan Pernyataan If – Else Tampilan Masukan yang diinginkan : Perpustakaan "..Kom 141 ... <hasil proses> Jenis Buku : ..

Bab 9 : Fungsi Lembar ini Sengaja Dikosongkan ( Untuk Catatan Boleh Juga ) 142 Pemrogramman C++ .

1. guna untuk membedakannya dengan nama_variabel. didalamnya membuat nilai pembuktian pertama dan menterjemahkan code program didalam kode objek. Preprocessor Directives Penjelasan Adalah suatu perintah yang termasuk kedalam program. Sedangkan Teks merupakan suatu nilai yang diberikan pada nama_konstanta.1.Bab 10 : Macro Pemrogramman C++ Bab 10 : Macro Penjelasan Didalam penyusunan suatu makro ada beberapa hal yang perlu dipelajari adalah : 10.14 • Karakter #define HURUF ‘B’ • String #define JABATAN “INSTRUCTOR” • Pernyataan #define CETAK (“Borland C++”) • Fungsi Sederhana #define LUAS_KUBUS (n*n) Frieyadie. Teks dapat berupa : • Numerik #define PI 3.Kom 143 . Didalam penggunaan preprocessor directive selalu dimulai dengan tanda : # Ada beberapa preprocessor directive. ketika didalam proses penterjemahan (Compile) program berlangsung. Bentuk umum dari preprocessor directive #define ini adalah: #define nama_konstanta teks Contoh : Teks #define A 6 Nama_Konstanta Dalam pendeklarasian preprocessor directive #define. tetapi bukanlah instruksi dari program itu sendiri. S. # define Penjelasan Digunakan untuk mendefinisikan suatu nilai tertentu kepada suatu nama konstanta. Nama_Konstanta sebaiknya ditulis dengan menggunakan huruf besar. Preprocessor ini dijalankan secara otomatis oleh kompiler.1. tetapi untuk preprocessor. diantaranya adalah : 10.

Contoh-1 /* -------------------------.h> #include<iostream. ls_kubus.h> #include<conio. } Output yang akan dihasilkan. dari program contoh-1 diatas adalah : Gambar 9. cout<<"Luas Lingkaran dengan : "<<endl.*/ /* Program Penggunaan #define */ /* -------------------------.h> #include<conio. 144 Pemrogramman C++ .h> #define #define #define #define #define #define #define #define awal { akhir } mulai() main() cetak cout masuk cin hapus() clrscr() tahan() getch() LS_KUBUS (sisi*sisi) mulai() awal int sisi. # define akan mengganti semua nama konstanta tadi dengan teksnya sebelum proses kompilasi dimulai.*/ #include<stdio. getche().1 Hasil Contoh-1 Contoh-2 /* -------------------------.h> #include<iostream.h> #define PI 3.141592 #define L(n) PI*n*n main() { clrscr().Bab 10 : Macro Setelah #define ditentukan didalam program cukup dituliskan nama_konstantanya saja.*/ #include<stdio. cout<<"Jari-jari = 5 adalah "<<L(5)<<endl. cout<<"Jari-jari = 10 adalah "<<L(10)<<endl.*/ /* Program Penggunaan #define */ /* -------------------------.

} Frieyadie. 120.2. 99. system("PAUSE"). int main(void) { int i. t=a. i < INDEX. 4. i++) printf("%d ". bubble_srt(array. printf("Sebelum di Urutkan :\n"). for(i = 0. Hasil Contoh-2 Contoh-3 /******************** Contoh Bubble Sorting ********************/ #include <stdio. S. masuk>>sisi. array[i]). for(i = 0. array[i]). 10}. // Mengurutkan array printf("\nSetelah diurutkan :\n"). int array[INDEX] = {12. b=t. printf("\n"). 3. akhir Output yang akan dihasilkan.Bab 10 : Macro hapus().b) { int t. 1. ls_kubus = LS_KUBUS. i++) printf("%d ". cetak<<"Masukkan Nilai Sisi Kubus = ". int n). cetak<<"Luas Kubus adalah : "<<ls_kubus.h> #define SWAP(a. a=b.h> #include <stdlib. return 0. 9. cetak<<"Program Penggunaan #define"<<endl. INDEX). dari program contoh-2 diatas adalah : Gambar 9. i < INDEX. } #define INDEX 8 void bubble_srt(int a[]. printf("\n\n").Kom 145 // Menghentikan tampilan . tahan().

} } } Output yang akan dihasilkan.1. • 146 #include <nama_file_header> Pemrogramman C++ . Dalam penulisan #include ada dua bentuk penulisan : #include "nama_file_header" atau #include <nama_file_header> Pada bentuk penulisan #include mempunyai arti yang berbeda. dari program contoh-3 diatas adalah : Gambar 9. yaitu berfungsi untuk memasukkan atau menyertakan file-file header kedalam program yang akan dibuat. # include Penjelasan Preprocessor #include telah dibahas pada bab sebelumnya. i++) { for(j = 1.3. i < n. j++) { if(a[j-1] > a[j]) SWAP(a[j-1]. Hasil Contoh-3 10. j. int n ) { int i.Bab 10 : Macro /****************** Fungsi Bubble Sort *******************/ void bubble_srt( int a[]. yaitu : • #include "nama_file_header" “Pertama kali compiler akan mencari file header yang disebutkan pada directori yang sedang aktif dan apa bila tidak ditemukan akan mencari pada directori dimana file header tersebut berada “.2. for(i = 0. j < (n-i).a[j]).

jadi pada saat pengujian N > 0. #if ekspresi-konstanta penyataan. kecuali pada directori yang sedang aktif. Hasil Contoh-4 Hal ini terlihat bahwa nilai variabel N = -4. #endif Benuk Penulisan Contoh-4 /*********************** Penggunaan #if .4. #endif } Output yang akan dihasilkan.Bab 10 : Macro “Pertama kali compiler akan mencari file header yang disebutkan pada directori yang ada file headernya.#endif ***********************/ #define N -4 main() { #if N > 0 printf("Lebih Besar dari Nol"). dari program contoh-4 diatas adalah : Gambar 9. S.Kom 147 . Pernyataan kondisi berupa ekspresi konstanta yang dideklarasikan dengan #define. 10.#endif Penjelasan Preprocessor #if .1.3.#endif digunakan untuk mengkompilasi jika pernyataan kondisi pada #if bernilai benar. maka dari proses program diatas tidak ditampilkan hasilnya Frieyadie. # if . jika tidak maka. Nilai N lebih kecil dari 0. diabaikan.

Bentuk #elif diikuti oleh ekspresi-konstanta. #endif } Hasil dari program contoh-5 diatas adalah : Benuk Penulisan Contoh-5 Gambar 9. Pemrogramman C++ 148 . jika #if bernilai salah maka. #endif /****************************** Penggunaan #if . Pernyataan kondisi berupa ekspresi konstanta yang dideklarasikan dengan #define.#endif Penjelasan Preprocessor #if ..#else .#else -#endif digunakan untuk mengkompilasi jika pernyataan kondisi pada #if bernilai benar. # if . pernyataan #else dikompilasi.1. Dalam hal ini #elif sama halnya seperti #elseif. Hasil Contoh-5 10. Perintah dijalankan sesuai dengan kondisi yang telah ditentukan. Benuk Penulisan #if ekspresi-konstanta-1 Penyataan-1. . #elif ekspresi-konstanta-2 Penyataan-2. merupakan kombinasi dari #if dan #else.#endif ******************************/ #define N -4 main() { #if N > 0 printf("Lebih Besar dari Nol").4. # elif Penjelasan Preprocessor #elif digunakan untuk mengkompilasi dari pernyataan bertingkat. #if ekspresi-konstanta Penyataan-1. #else printf("Lebih Kecil dari Nol").#else ..1.Bab 10 : Macro 10. Hasil hanya dapat dijalankan sesuai dengan ketentuan yang benar.5.5. #else Penyataan-2.

Bab 10 : Macro ..6.6. #else N < 10 printf("Lebih Kecil dari Sepuluh"). jadi pada saat pengujian N > 10.h> #define LEBAR_MAKS 100 #if LEBAR_MAKS>200 #undef LEBAR_MAKS //--> menghilangkan LEBAR_MAKS #define LEBAR_MAKS 200 Frieyadie. #elif N == 10 printf("Sama Dengan Sepuluh "). #endif Contoh-6 /***************** Penggunaan #elif ******************/ #define N 12 main() { #if N > 10 printf("Lebih Besar dari Sepuluh"). Nilai N lebih besar dari 10. Hasil Contoh-6 Hal ini terlihat bahwa nilai variabel N = 12.1. #endif } Hasil dari program contoh-6 diatas adalah : Gambar 9.. #elif ekspresi-konstanta-n Penyataan-n. maka dari proses program diatas ditampilkan hasilnya adalah “Lebih Besar dari Sepuluh” 10.Kom 149 Contoh-7 . #undef Penjelasan Preprocessor #undef digunakan untuk menghilangkan nilai yang telah didefiniskan dari daftar definisi. /**************** Penggunaan #undef *****************/ #include<iostream. S.

1. pernyataan akan dijalankan.7.7. Hasil dari program contoh-7 diatas adalah : Gambar 9. hal ini dapat dilakukan jika sudah konstanta didefiniskan pada bagian #define. jika terpenuhi maka pengenal LEBAR_MAKS nilainya akan dihapus.Bab 10 : Macro #elsif LEBAR_MAKS <50 #undef LEBAR_MAKS //--> menghilangkan LEBAR_MAKS #define LEBAR_MAKS 50 #else #undef LEBAR_MAKS //--> menghilangkan LEBAR_MAKS #define LEBAR_MAKS 50 #endif main() { char str[LEBAR_MAKS]. #endif Penjelasan : Jika nama-konstanta terdefinisi maka.# ifndef Penjelasan Preprocessor #ifdef dan #ifendef memberikan bagian dari program yang akan dikompile. pernyataan akan diabaikan. Hasil Contoh-7 10. Contoh : 150 Benuk Penulisan Pemrogramman C++ . } Hal ini terlihat bahwa #if LEBAR_MAKS>200 memeriksa apakah LEBAR_MAKS>200. cout<<LEBAR_MAKS. hal ini merupakan parameter yang khusus yang harus terdefinisi. jika nama-konstanta tidak terdefinisi maka. #ifdef nama-konstanta pernyataan. # ifdef .

8.Bab 10 : Macro #ifdef LEBAR_MAKS char str[LEBAR_MAKS]. #else cout<<"Pagi ini "<<ANAK2<<"pergi Kesekolah". #endif #endif getche().h> #define ANAK1 "ILHAM" #define ANAK2 "HADIANSYAH" main() { #ifdef ANAK1 cout<<"Pagi ini "<<ANAK1<<" pergi Kesekolah". S. } Hasil dari program contoh-8 diatas adalah : Gambar 9. #endif Penjelasan : Jika nama-konstanta tidak terdefinisi maka. Hasil Contoh-8 Frieyadie. cout<<" pergi Kesekolah".Kom 151 . Contoh-8 //--> Penggunaan #ifdef dan #ifndef #include<iostream. #else #ifndef ANAK2 cout<<"Hari ini "<<ANAK1<<" "<<ANAK2. pernyataan akan diabailkan. #endif #ifndef nama-konstanta pernyataan. Contoh : #ifndef LEBAR_MAKS #define LEBAR_MAKS 100 #endif char str[LEBAR_MAKS]. pernyataan akan dijalankan. jika nama-konstanta terdefinisi maka.

h Types for dealing with time. */ #define #define #define #define #define #define #define #define #define #define awal { akhir } mulai() main() cetak cout tampil cprintf masuk scanf hapus() clrscr() jika if warna textcolor tahan getche() Setelah disimpan.1988 All Rights Reserved.h contoh pembuatan file header untuk pengaturan. Berikut contoh file header standar yang disediakan oleh Borland C++. Pembuatan File Header Penjelasan File Header adalah suatu file dengan akhiran . Copyright (c) Frieyadie 2001 All Rights Reserved. File ini sebenarnya berisikan deklarasi fungsi dan definisi konstanta. Buatlah program file heder dibawah ini.h . Selain file-file header standar yang disediakan oleh C++.h. Yang harus diperhatikan pada saat menyimpan file header yang telah dibuat harus digunakan akhiran . dengan cara yang sama seperti membuat file editor. /* types. selanjutnya Compile file atur. pada folder kerja anda folder include Contoh-9 /* atur.2.h. Copyright (c) Borland International 1987. kemudian simpan dengan nama : atur.Bab 10 : Macro 10.h . kita dapat juga membuat file header sediri. 152 Pemrogramman C++ . #endif Sebagai latihan berikut kita akan membuat suatu file header sendiri yang akan digunakan pada file editor. */ #ifndef __TIME_T #define __TIME_T typedef long time_t.

1 Buatlah program menghitung pangkat dua serta pangkat tiga dari sebuah bilangan bulat dengan makro.3.h> #include<conio. Proses berada didalam file header. tahan.*/ #include<stdio. cin>>b. c.cpp Contoh-10 /* ---------------------------------.Kom . hapus(). cin>>a.h 153 Penjelasan No. 2 Frieyadie. S. sedangkan sebagai output adalah pangkat dua serta pangkat tiga dari bilangan bulat tersebut.*/ /* program dengan file header sendiri */ /* ---------------------------------.h" mulai() awal int a. cout<<"Hasil dari "<<a<<" + "<<b<<" = "<<c. b. cout<<endl. Latihan Penjelasan No. cout<<"Masukkan Nilai A = ". Buatlah program menghitung luas dan keliling lingkaran. warna(4). cout<<"Masukkan Nilai B = ". Hasil Contoh-10 10.h> #include"atur.Bab 10 : Macro Buatlah program dibawah ini.9. c=a+b. nama file header yang diinginkan : lingkaran.h> #include<iostream. akhir Hasil dari program contoh-10 diatas adalah : Gambar 9. tampil("\nPROGRAM PENJUMLAHAN\n"). kemudian gunakan file header yang sudah anda buat dan simpan dengan nama : sendiri. Sebagai input adalah bilangan itu sendiri.

h..A. <di-input> : ....S Nilai Murni U.A. 3 : .T.S * 10 % * 20 % * 30 % * 40 % Untuk proses penilaian dilakukan didalam file header dan simpan nama file header tersebut hitnilai..S : ……<di-input> : ……<di-input> : ……<di-input> : ……<di-input> = <data-inputan> * 10% = <hasil-proses> = <data-inputan> * 20% = <hasil-proses> = <data-inputan> * 30% = <hasil-proses> = <data-inputan> * 40% = <hasil-proses> Nilai Akhir yang diperoleh sebesar : …. < hasil proses > pada suatu Buatlah program menghitung nilai akhir perkuliahan matakuliah. Tampilan yang diinginkan Program Hitung Nilai Akhir Mata Kuliah Masukkan Nilai Absensi Masukkan Nilai Tugas Masukkan Nilai U. < hasil proses > : . dengan ketentuan sebagai berikut : • • • • Nilai Absensi Nilai Tugas Nilai U.Bab 10 : Macro Tampilan Yang Diinginkan : Masukkan Nilai Jari-jari Luas Lingkaran Keliling Lingkaran Penjelasan No.T. <hasil-proses> 154 Pemrogramman C++ ..S Masukkan Nilai U..S Nilai U.S Nilai Murni Absensi Nilai Murni Tugas Nilai Murni U.A.T.

Bab 11 : Structure

BORLAND C++

Bab 10 : Structure
Penjelasan Structure digunakan untuk mengelompokan sejumlah data yang mempunyai tipe data yang berbeda. Variabel-variabel yang membentuk sebuah struktur dinamakan elemen struktur. Struktur sama seperti Record di dalam Bahasa Pemrograman Pascal

11.1. Deklarasi Structure
Penjelasan Structure dapat deklarasikan seperti berikut struct nama_tipe_struktur { elemen_struktur; ..... ..... };

atau struct { elemen_struktur; ..... ..... } nama_tipe_struktur;

Contoh Deklarasi

struct { char nim[5]; char nama[15]; float nilai; } mahasiswa;

Frieyadie, S.Kom

155

Bab 11 : Structure

Contoh-1

/* /* /* /*

---------------------------Program Penggunaan structure Nama File : struct1.cpp ----------------------------

*/ */ */ */

#include<stdio.h> #include<conio.h> #include<iostream.h> main() { struct { char nim[5]; char nama[15]; float nilai; } mahasiswa; clrscr(); cout<<"masukan NIM = "; cin>>mahasiswa.nim; cout<<"masukan Nama = "; cin>>mahasiswa.nama; cout<<"masukan Nilai Akhir = "; cin>>mahasiswa.nilai; cout<<"\n\nData Yang cout<<"NIM = cout<<"Nama = cout<<"Nilai Akhir = getch(); } Output yang akan dihasilkan, dari program contoh-1 diatas adalah : di Inputkan adalah : \n\n"; "<<mahasiswa.nim<<endl; "<<mahasiswa.nama<<endl; "<<mahasiswa.nilai<<endl;

Gambar 11.1. Hasil Contoh 1

156

Pemrograman C++

Bab 11 : Structure

11.2. Nested Structure
Penjelasan Nested Structure merupakan suatu Structure dapat digunakan didalam structure yang lainnya. Hal seperti ini anda dapat lihat pada program berikut ini : /* ----------------------------------/* Program Penggunaan Nested structure /* Nama File : struct2.cpp /* ----------------------------------#include<stdio.h> #include<conio.h> #include<iostream.h> main() { struct dtmhs { char nim[9]; char nama[15]; }; struct dtnil { float nil1; float nil2; }; struct { struct dtmhs mhs; struct dtnil nil; } nilai; clrscr(); //-> masukan data cout<<"masukan NIM = cout<<"masukan Nama = cout<<"masukan Nilai UTS = cout<<"masukan Nilai UAS = cout<<endl; "; "; "; "; cin>>nilai.mhs.nim; cin>>nilai.mhs.nama; cin>>nilai.nil.nil1; cin>>nilai.nil.nil2; */ */ */ */

Contoh-2

//-> menampilkan hasil masukan cout<<"masukan NIM = "<<nilai.mhs.nim<<endl; cout<<"masukan Nama = "<<nilai.mhs.nama<<endl; cout<<"masukan Nilai UTS = "<<nilai.nil.nil1<<endl; cout<<"masukan Nilai UAS = "<<nilai.nil.nil2<<endl; cout<<endl; getch(); return(0); }

Output yang akan dihasilkan, dari program contoh-2 diatas adalah :

Frieyadie, S.Kom

157

for(i=0.. cin>>mhs[i]..h> #include<conio. Structure dengan Array Penjelasan Penggunaan Array sering dikaitkan dengan Structure. i++) { cout<<"masukan NIM = ". Hasil Contoh 2 11..3. } mhs[5]. Berikut bentuk deklarasi array structure : struct { elemen_struktur. cin>>mhs[i]. . cout<<"masukan Nilai Akhir = ".h> main() { int i. struct { char nim[5]. j=1.2.Bab 11 : Structure Gambar 11.nama... float nilai..nilai. } nama_tipe_struktur[jml_index]. i<2. clrscr().. cin>>mhs[i]. } 158 Pemrograman C++ . char nama[15]..nim. .h> #include<iostream. sehingga membentuk Array dari Structure.cpp ---------------------------------- */ */ */ */ #include<stdio. cout<<"masukan Nama = ". Contoh-3 /* /* /* /* ---------------------------------Program Penggunaan array structure Nama File : struct3.

Hasil Contoh 3 11.4. cout<<"Nilai Akhir = "<<mhs[i]. */ */ */ */ Contoh-4 Frieyadie. } Output yang akan dihasilkan.nama<<endl.3.nim<<endl.cpp /* -----------------------------------------#include<stdio. j=1."<<j++<<endl. i++) { cout<<"Data Ke . main() { int i.h> #include<iostream. S. cout<<endl. cout<<"NIM = "<<mhs[i]. i<2.nilai<<endl.h> char ket(float n). Structure dengan Function Penjelasan Suatu elemen-elemen dari suatu Structure dapat dikirimkan ke dalam suatu function dengan cara yang sama seperti mengirimkan suatu variabel sederhana kedalam suatu function.h> #include<conio. Berikut contoh sederhana yang anda dapat lihat pada contoh program berikut : /* -----------------------------------------/* Program Penggunaan structure pada function /* Nama File : struct4. } getch(). k=1. dari program contoh-3 diatas adalah : Gambar 11.Bab 11 : Structure for(i=0. cout<<"Nama = "<<mhs[i].Kom 159 .

else return 'G'.Bab 11 : Structure struct { char nim[5]. cout<<"masukan NIM = ". cout<<"Keterangan yang didapat = ". cout<<"Nilai Akhir = "<<mhs[i]. } clrscr(). cin>>mhs[i].4. i<2. cout<<"masukan Nama = ". } char ket(float n) { if(n > 65) return 'L'. cout<<"NIM = "<<mhs[i]. } Output yang akan dihasilkan. char nama[15].nim. Hasil Contoh 4 160 Pemrograman C++ . cout<<"masukan Nilai Akhir = ". clrscr(). dari program contoh-3 diatas adalah : Gambar 11. cin>>mhs[i]. i++) { cout<<"Data Ke . cout<<endl. cin>>mhs[i].nilai<<endl. i++) { cout<<"Data Ke . cout<<"Nama = "<<mhs[i]. } mhs[5]. } getch().nim<<endl.nama<<endl.nama. for(i=0. i<2.nilai."<<k++<<endl.nilai)<<endl."<<j++<<endl. for(i=0. float nilai. cout<<endl. cout<<ket(mhs[i].

Bab 11 : Structure 11. Latihan Penjelasan Kerjakan tugas-tugas dibawah ini sesuai dengan petunjuk dan ketentuan pengerjaan yang telah diberikan : 1.. Nilai Huruf . maka kelebihan jam kerja dikalikan Rp.. Honor harian pegawai honorer sebesar Rp...... Frieyadie.......... 2. Buatlah program untuk menghitung honor pegawai honorer dari suatu perusahaan dengan menghitung kelebihan jumlah jam kerja pegawai tersebut.. UAS . maka Nilai Hasil >= 70 Jika Nilai Huruf = C.... Buatlah sebuah function untuk menghitung honor lembur Ketentuan lembuh dihitung dari kelebihan jam kerja pegawai tesebut. maka Nilai Hasil >= 47 Jika Nilai Huruf = E... Buatlah program untuk menghitung nilai Hasil dari nilai UTS... S.... hanya mendapat honor harian saja....... Nilai Akhir .. maka Nilai Hasil >= 56 Jika Nilai Huruf = D.... .... . Nama Mahasiswa .. 15000 Ketentuan : Masukan banyak data yang diinginkan untuk menentukan banyak data yang akan diproses. Nilai UTS . UAS dan menampilkan nilai huruf yang akan didapat........ seperti dibawah ini : Daftar Nilai Mata Kuliah C++ No ...... ..... maka Nilai Hasil < 47 Tampilan akhir adalah sebuah tabel...... 5000 + Honor harian Jika jumlah jam kerja hanya 8 jam tidak mendapat honor lembur..... Jam kerja normal pegawai sebanyak 8 jam • • Jika jumlah jam kerja lebih dari 8 jam..... maka Nilai Hasil >= 80 Jika Nilai Huruf = B.. ......5. . Buatlah sebuah function untuk menghitung nilai Hasil Nilai Hasil = (Nilai UAS * 40%) + (Nilai UTS * 60%) • • • • • Jika Nilai Huruf = A.....Kom 161 .. .......... Ketentuan : Masukan banyak data yang diinginkan untuk menentukan banyak data yang akan diproses.

...... Kelebihan Jam Kerja ......... Nama Pegawai ......... ...... ... .............. seperti dibawah ini : Daftar Honor Pegawai Honorer PT.....Bab 11 : Structure Tampilan akhir adalah sebuah tabel....... Jumlah Honor ... . ALAKADARNYA No ..... .. Jumlah Jam Kerja .. ................ 162 Pemrograman C++ ..

BORLAND C++ Daftar Pustaka Frieyadie.glenmccl. Yogyakarta Potts.Kom 127 .about.com http://codenewbie. Yogyakarta Kadir. Steve dan Clayton Walnum.1997.com/tutorials Frieyadie. Penerbit Andi. Yogyakarta URL : http://www. S. Abdul.htm http://cplus. Pemrogramman C++ Membahas Pemrogramman Berorientasi Objek.com/tutor. 2006. Panduan Pemrogramman C++. 1995. Penerbit Andi. Penerbit Andi.cprogramming.com http://www.Pemrogramman Berorientasi Objek dengan Borland C++.

Daftar Pustaka 128 Pemrograman C++ .