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

S.Daftar Isi Frieyadie.Kom ii .

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

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

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

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

dengan cara : 1 . Penambahan yang terdapat pada C++ ini adalah Object Oriented Programming (OOP). yang mempunyai tujuan utamanya adalah membantu membuat dan mengelola program yang besar dan kompleks. Word Star dan lain-lain. Bahasa C mempunyai banyak kemampuan yang sering digunakan diantaranya kemampuan untuk membuat perangkat lunak. 1. Mengkompilasi Program ( Compile ) Melakukan Pengujian Program ( Debugging ) Mengaitkan Object dan Library ke Program ( Linking ) Menjalankan Program ( Running ) C++ ver 5. Bahasa C.2. Ricthie pada tahun 1972. Kernighan dan Denies M.Kom Jika anda menggunakan sistem jaringan pada Windows XP.1. merupakan Lembar kerja terpadu untuk pengembangan program. Sekilas Perkembangan Bahasa C Penjelasan Bahasa C merupakan pengembangan dari bahasa B yang ditulis oleh Ken Thompson pada tahun 1970. S. IDE dari Borland C++. pada awalnya dioperasikan diatas sistem operasi UNIX. diantaranya : • Frieyadie. misalnya dBASE.02. 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.Bab 1 : Pengenalan Bahasa C++ Pemrogramman C++ Bab 1 : Pengenalan Bahasa C++ 1. anda bisa membuatkan shortcut terlebih dahulu dari server. 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++. dapat digunakan untuk : • • • • • Menulis Naskah Program. Pengenalan IDE Borland C++ Penjelasan IDE merupakan singkatan dari Integrated Development Environment. anda bisa Untuk mengaktifkan aplikasi Borland menggunakan banyak cara. Bahasa C untuk pertama kali ditulis oleh Brian W.

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

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

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

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

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

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

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

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

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

adalah : Unsigned digunakan bila data yang digunakan hanya data yang positif saja. yang dimiliki oleh Borland C++.147.1 x 10+4932 5–7 15 – 16 19 Tipe Data Tambahan.4 x 10+38 1.294. 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 127 -32768 s.1.147.d 32767 -32768 s.d 1.648 s.d 2.d 3. yaitu diantaranya adalah : Tabel 2. 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.Kom 11 .Bab 2 : Pengenalan Model Data. Pengenalan Tipe Data Penjelasan Borland C++ memiliki 7 tipe data dasar.435.1. S.967.295 Frieyadie. Perintah Masukan dan Keluaran Pemrogramman C++ Bab 2 : Pengenalan Model Data.d 1.7 x 10-308 s.4 x 10-38 s. Tabel 2. Perintah Masukan dan Keluaran 2.435.647 3.d 32767 -2.4 x 10-4932 s.7 x 10+308 3.2.

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

).3. Variabel Penjelasan Adalah suatu tempat menampung data atau konstanta dimemori yang mempunyai nilai atau data yang dapat berubah-ubah selama proses program.1. Dalam pemberian nama variabel. Tabel 2. 2. S. Bilangan Desimal Berpresisi Ganda atau Double Precision.Kom 13 . 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. Variabel Numerik Variabel numerik ini dibagi menjadi menjadi 3 (tiga) macam : • Bilangan Bulat • Bilangan Desimal Berpresisi Tunggal atau Floating Point.3. Frieyadie.3.Bab 2 : Pengenalan Model Data.3. • Tidak boleh diawali oleh angka dan menggunakan operator aritmatika.3. 2.3.2. Setiap kali pendeklarasian variabel harus diakhiri oleh tanda titik koma ( . mempunyai ketentuan-ketentuan antara lain . Variabel Text • • Character ( Karakter Tunggal ) String ( Untuk Rangkaian Karakter ) 2. seperti : integer atau character dan nama variabel itu sendiri. Deklarasi Variabel ini meliputi tipe variabel. • Tidak boleh ada sepasi ( cth : gaji bersih ) dan dapat menggunakan tanda garis bawah ( _ ) sebagai penghubung (cth : gaji_bersih). 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.

Perintah Masukan dan Keluaran Contoh Deklarasi char nama_mahasiswa. printf("string-kontrol".2).4. diantaranya adalah : • printf() • puts() • putchar() • cout() 2. konstanta dan ungkapan.4. argumen-2. Tabel 2. String-Kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta penentu format. char grade. 14 Pemrogramman C++ .Bab 2 : Pengenalan Model Data.%d”. 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 .1 printf() Penjelasan Fungsi printf() merupakan fungsi keluaran yang paling umum digunakan untuk menampilkan informasi kelayar. 2. Perintah Keluaran Penjelasan Perintah standar output yang disediakan oleh Borland C++.’b’. argumen-1. Penentu format dipakai untuk memberi tahu kompiler mengenai jenis data yang dipakai dan akan ditampilkan. float rata_rata . …). int nilai. Argumen ini dapat berupa variabel.4.

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

Hasil Contoh-2 Contoh-3 #include <stdio.h> main() { float a = 7.Bab 2 : Pengenalan Model Data.2. 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++ . a).5. Hasil Contoh-3 b. } Output yang akan dihasilkan.21. Perintah Masukan dan Keluaran Gambar 2.h> #include <conio.1f". Beberapa Escape Sequences lainnya antara lain : Tabel 2. Penjelasan Escape Sequences merupakan suatu karakter khusus yang menggunakan notasi “ \ ” (back slash) jika karakter terdapat notasi “\” ini sebagai karakter “escape” ( menghindar). printf("Bilangan A = %4. jika menggunakan panentu lebar field adalah Gambar 2. clrscr(). b). b = 243.50. printf("Bilangan B = %4. Penggunaan Escape Sequences.3.1f \n".

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

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

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

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

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

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

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

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

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

dari program contoh-18 diatas adalah : 28 Pemrogramman C++ . cout<<"-------------------------\n".h> # include <iostream.Bab 2 : Pengenalan Model Data.a+5). } getche(). for (a=1. Contoh-18 //tanda format ios::uppercase # include <stdio.h> # include <iomanip. a++) { gotoxy(15. cout<<"Konversi Konversi \n". cout<<"Tanpa Dengan \n".h> main() { int a. a<=15. cout<<"-------------------------\n". clrscr().17. Perintah Masukan dan Keluaran Gambar 2.h> # include <conio. for (a=1. } Output yang akan dihasilkan. Hasil Contoh-17 4. 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<<"Penggunaan ios::uppercase\n". a<=15. a++) cout<<hex<<a<<endl. cout<<setiosflags(ios::uppercase)<<hex<<a<<endl.

for (a=1.h> <conio. Perintah Masukan dan Keluaran Gambar 2. cout<<"Decimal Hexadecimal Oktal \n".h> main() { int a.h> <iomanip.Kom 29 .a+5). Frieyadie.h> <iostream. cout<<setiosflags(ios::showbase). cout<<"----------------------------\n". Contoh-19 //tanda format ios::showbase # # # # include include include include <stdio. 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. a<=15. clrscr(). cout<<"Penggunaan ios::showbase\n". cout<<dec<<a<<endl.Bab 2 : Pengenalan Model Data.18 Hasil Contoh-18 5. a++) { gotoxy(4. cout<<"----------------------------\n". S.

a++) { gotoxy(15. cout<<oct<<a<<endl. Hasil Contoh-19 6. } for (a=1. getche(). a<=15. } Output yang akan dihasilkan.h> # include <iostream. Pemrogramman C++ 30 .h> main() { double a = 78. Perintah Masukan dan Keluaran } for (a=1.19.h> # include <iomanip.h> # include <conio. 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. dari program contoh-19 diatas adalah : Gambar 2. Contoh-20 //tanda format ios::showpoint # include <stdio.Bab 2 : Pengenalan Model Data. cout<<hex<<a<<endl.a+5). } cout<<"----------------------------\n". a<=15.a+5). a++) { gotoxy(25.

cout<<"Tanpa Menggunakan ios::showpos"<<"\n\n". clrscr(). cout<<"Variabel a = "<<a<<"\n\n". Perintah Masukan dan Keluaran clrscr(). cout<<"Nilai a = "<<a<<" Nilai b = "<<b<<endl.Kom 31 . S. 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. dari program contoh-21 diatas adalah : Frieyadie. cout<<setiosflags(ios::showpoint).Bab 2 : Pengenalan Model Data. } Output yang akan dihasilkan. getche().h> # include <iostream. Hasil Contoh-17 7. getche().17. cout<<"\n\n". cout<<"Dengan Menggunakan ios::showpos"<<"\n\n".h> # include <conio. cout<<"Nilai a = "<<a<<" Nilai b = "<<b<<endl. //-> dengan tanda format ios::showpoint cout<<"Dengan tanda format ios::showpoint"<<endl. cout<<"Variabel a = "<<a<<endl. dari program contoh-17 diatas adalah : Gambar 2. } Output yang akan dihasilkan.h> main() { int a = 8. b = -9. Contoh-21 //tanda format ios::showpos # include <stdio. //-> tanpa tanda format ios::showpoint cout<<"Tanpa tanda format ios::showpoint"<<endl.h> # include <iomanip. cout<<setiosflags(ios::showpos).

Hasil Contoh-21 2. &nama-variabel). Perintah Masukan Penjelasan Perintah standar input yang disediakan oleh Borland C++. Perintah Masukan dan Keluaran Gambar 2. Bentuk Umum dari fungsi ini adalah : scanf("penentu format".5. Keterangan simbol & merupkan pointer yang digunakan untuk menunjuk kealamat variabel memori yang dituju.Bab 2 : Pengenalan Model Data. Tabel 2.7. diantaranya adalah : • • • scanf() gets () cin() • • getch() getche() 2.5.1.21. scanf() Penjelasan Fungsi scanf() digunakan untuk memasukkan berbagai jenis data. 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++ .

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

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

Hasil Contoh-25 Frieyadie. c = a + b. 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. S. } Output yang akan dihasilkan.5.Bab 2 : Pengenalan Model Data. Hasil Contoh-24 2. } Output yang akan dihasilkan. printf("Masukan Sebuah Karakter Bebas = "). kar = getch(). dari program contoh-24 diatas adalah : Gambar 2.h> main() { char kar. kar).4. cin>>b. dan karakter yang dimasukan tidak akan ditampilkan di layar. getch().h> # include <conio. # include <stdio.24. File header yang harus disertakan adalah conio.Kom 35 . Perintah Masukan dan Keluaran cout<<"Masukan Nilai B : ". printf("\nTadi Anda Memasukan karakter %c".25. clrscr().h. dari program contoh-15 diatas adalah : Contoh-25 Gambar 2. cout<<"Nilai C : "<<c<<endl.

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

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

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

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. Operator Aritmatika Penjelasan Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah : Tabel 3. pengurangan dan lain-lain. 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. S. adalah : Frieyadie.1. seperti penjumlahan.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.Kom 39 .

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

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

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

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

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

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

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

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

6 Hasil Contoh-6 3. A+4 < 10 || B>A+5 || C–3 > 4 Jika nilai A = 3.5. C = 7. 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. 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.2. 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++ . akan dianggap BENAR. B = 3. bila salah satu ekspresi relasi yang dihubungkan bernilai BENAR dan bila semua ekspresi relasi yang dihubungkan bernilai SALAH.Modul 3: Operator Borland C++ Gambar 3. maka akan bernilai SALAH.

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

5.h> #include<iostream.3. 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. } getch(). 50 Pemrogramman C++ .h> main() { int a. = ". /* Proses */ b = (a + 4 < 10). !(A+4 < 10) Jika nilai A = 3. c. cout<<endl<<"Program Ekspresi NOT "<<endl. c = !(b). cout<<"Nilai b = (a + 4 < 10) = "<<b<<endl. maka ekspresi tersebut akan bernilai SALAH !(A+4 < 10) !(BENAR) = SALAH = 0 Contoh-8 /* Penggunaan Operasi Logika NOT */ #include <stdio. b. cout<<"Nilai c = !(b) = "<<c. clrscr().h> #include <conio. begitu pula sebaliknya.Modul 3: Operator Borland C++ 3. Operator Logika NOT Penjelasan Operator logika NOT akan memberikan nilai kebalikkan dari ekspresi yang disebutkan. cout<<"Nilai A = "<<a<<endl. Jika nilai yang disebutkan bernilai BENAR maka akan menghasilkan nilai SALAH. cout<<"Masukan Nila A cin>>a. 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. Contoh : 0000000011001001 = 201 //////// 0000000110010010 = 402 digeser 1 bit ke kiri Dibagian kanan disisipkan 0. S.Kom 51 . 3.6.8 Hasil Contoh-8 3. Operator Bitwise Penjelasan Operator Bitwise digunakan untuk memanipulasi data dalam bentuk bit. dari program contoh-8 diatas adalah : Gambar 3. Tabel Operator Bitiwise 3.6. Borland C++ menyedikan enam buah operator bitwise.6. sebanyak bit yang digeser Frieyadie. Operator Bitwise << (Shift Left) Penjelasan Operator Bitwise Shift Left digunakan untuk menggeser sejumlah bit kekiri.1.

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

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

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

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

h> #include<conio. cin>>x. dari program contoh-13 diatas adalah : Gambar 3. a = x ^ y. clrscr().6. 3.13 Hasil Contoh-13 3.h> main() { int a. x. y. cout<<’\n’. XOR } Output yang akan dihasilkan.5.10. cin>>y. cout<<"Hasil dari "<<x<<" ^ "<<y<<" = "<<a<<endl.h> #include<stdio. getch(). cout<<"Masukan Nilai Y = ". Operator Bitwise ~ ( Not ) Penjelasan Operator Bitwise ~ ( Not ) digunakan membalik nilai bit dari suatu operand. 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++ . Tabel.Modul 3: Operator Borland C++ Contoh : 11001001 = 201 01100100 = 100 10101101 = 173 Contoh-13 #include<iostream. cout<<"Masukan Nilai X = ".

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

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

pernyataan majemuk atau pernyataan kosong. Jika pemakaian if diikuti dengan pernyataan majemuk. S. Untuk keperluan pengambilan keputusan. Pernyataan IF Penjelasan Pernyataan if mempunyai pengertian.Kom 59 . Diagram Alir IF Bentuk umum (kondisi) if if dari pernyataan pernyataan.1. Dari pengertian tersebut dapat dilihat dari diagram alir berikut: salah kondisi benar perintah Gambar 4. Penulisan kondisi harus didalam tanda kurung dan berupa ekspresi relasi dan penulisan pernyataan dapat berupa sebuah pernyataan tunggal.1. bentuk penulisannya sebagai berikut : Frieyadie. Borland C++ menyediakan beberapa perintah antara lain. maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan”. “ Jika kondisi bernilai benar. 4.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.

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

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

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++

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

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

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

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

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

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

... Nilai Keaktifan * 20% : .<hasil proses> Jadi Siswa yang bernama <tampil data>memperoleh nilai akhir sebesar ... 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> Penjelasan No... <diinput> Nilai Ujian : . <diinput> Layar Keluaran Siswa yang bernama <tampil data> Dengan Nilai Persentasi Yang dihasilkan. <hasil proses> Grade nilai yang didapat adalah .<diinput> Nilai Keaktifan : .... 3 Buatlah program untuk menghitung total pembayaran dari sebuah penjualan agen susu di kota besar ini...<hasil proses> Nilai Ujian * 50% : . • 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.<hasil proses> Nilai Tugas * 30% : ... S.....Kom ........ <diinput> Nilai Tugas : ......Bab 4 : Operasi Penyeleksian Kondisi • • • • • Nilai Murni Keaktifan = Nilai Keaktifaan dikalikan dengan 20%.. 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.

Ukuran Kecil 2. Ukuran Besar B. < diinput > Harga Yang Harus dibayar Sebesar Rp... Susu Bendera 1. Ukuran Besar C. Susu Dancow 1.. Ukuran Sedang 3.. 300... DINGIN DAMAI. Ukuran Kecil 2. Susu SGM 1.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. < diinput > Harga Satuan Barang Rp... Ukuran Sedang 3.per bulan. <hasil proses> Penjelasan No... Ukuran Kecil 2. < diinput > Nasukan Ukuran Kaleng : . memberikan Honor tetap kepada karyawan kontraknya sebesar Rp. dengan memperoleh tujangan-tunjangan sebagai berikut : • Tunjangan Jabatan Golongan 1 2 3 Persentase 5% 10% 15% 72 Pemrogramman C++ ..000.< tampil harga satuan > Jumlah Yang dibeli : . 4 PT. . Ukuran Sedang 3. Ukuran Besar Layar Keluaran Nasukan Jenis Susu : ..

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

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++

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

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

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

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

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

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

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

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

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

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

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

Bab 5 : Proses Perulangan 4. 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++ . 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 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 ---------.+ 110 6.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Array dimensi dua dapat digunakan seperti pendatan penjualan. 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. Jumlah Kolom Jumlah Baris Nama Array Tipe data elemen array Frieyadie. dimana indeks pertama menunjukan baris dan indeks kedua menunjukan kolom. 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.1 diatas maka dapat dituliskan kedalam array dimensi dua berikut : int data_jual[3][3]. S. Tabel Data Penjualan Pertahun No 1 2 3 Jika anda lihat dari tabel 7.Kom 103 .2.Bab 7 : Array 7. Array Berdimensi Dua Penjelasan Array dimensi dua tersusun dalam bentuk baris dan kolom. pendataan nilai dan lain sebagainya. Untuk menyatakan jumlah baris Untuk menyatakan jumlah kolom Contoh Pendeklarasian Array Sebagai contoh pendeklarasian yang akan kita gunakan adalah pengolahan data penjualan.

1. for(i=1. for(j=1. cout<<"-----------------------"<<endl. clrscr(). } } cout<<"Data Penjualan Pertahun"<<endl.i<=3."<<i<<" "<<j<<endl.j<=3.i++) { cout<<setiosflags(ios::left)<<setw(5)<<i. Mengakses Array Berdimensi Dua Penjelasan Suatu array. } cout<<"-----------------------"<<endl.i++) { for(j=1.Bab 7 : Array 7.j++) { cout<<"Data Ke .j<=3. cout<<"NO 2001 2002 2003"<<endl. for(i=1. data_jual[1][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]. /* ---------------.h> main() { int i. } 104 Pemrogramman C++ . j.h> #include<iostream.i<=3. } cout<<endl.*/ #include<conio. cout<<" ". cout<<"-----------------------"<<endl. cout<<"Jumlah Penjulan : ".j++) { cout<<setiosflags(ios::right)<<setw(4).h> #include<stdio.*/ /* Array Dimensi 2 */ /* ---------------.2. getch().h> #include<iomanip. cout<<data_jual[i][j]. cin>>data_jual[i][j]. int data_jual[4][4].

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

indeks kedua menunjukan kolom dan indeks ketiga menunjukan isi dari baris.Bab 7 : Array { int i. 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. 2.j<5. 7}}.j++) { cout<<data[i][j]. dimana indeks pertama menunjukan baris. kolom dan isi dari baris. for(i=0. } Output yang akan dihasilkan.i<2.i++) { for(j=0. cout<<" ". 4. berikut dapat anda lihat pada tabel berikut : 106 Pemrogramman C++ . Hasil Contoh-4 7. } cout<<endl. 2. Array Berdimensi Tiga Penjelasan Array dimensi dua tersusun dalam bentuk baris. } getch(). 2}. 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. 6. j.3. clrscr(). int data[2][5] = {{2. 5. 3. {4. dari program contoh-4 diatas adalah : Gambar 7.4.

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

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

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

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

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

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

.. . .. 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 : .. 2 Buatlah program untuk menghitung nilai akhir seorang siswa dari kursus yang diikutinya.. Dengan ketentuan sebagai berikut : • Nama Mahasiswa. .... Nama Nilai Grade Mahasiswa ---------------------------Tugas UAS UAS Akhir ---------------------------------------------------... ...... S.. ........... <proses counter> Nama Mahasiswa : ....Kom 113 .... <diinput> Nilai Tugas : ... <diinput> <<Terus berulang tergantung Jumlah Mahasiswa>> Layar Keluaran DAFTAR NILAI MATERI : PEMROGRAMMAN C++ ---------------------------------------------------No... . Nilai UTS dan Nilai UAS diinput....... ---------------------------------------------------- Frieyadie. <diinput> Nilai UTS : .... ..Bab 7 : Array Penjelasan No. .. <diinput> Mahasiswa Ke . . ...... Nilai Tugas. • Proses yang dilakukan untuk mendapatkan nilai murni dari masing-masing nilai.... <diinput> Nilai UAS : . ...... .........

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

7. /* -----------------------------. Output yang akan dihasilkan. cout<<"\nNilai didalam funsi main() = : "<<a. dari program contoh-7 diatas adalah : Gambar 9. getch(). 134 Pemrogramman C++ .h> int a = 6. //--> deklarasi variabel eksternal Contoh-8 void lokal().6.2.*/ /* Variabel Eksternal atau Global */ /* -----------------------------. Untuk pendeklarasian variabel ekternal ini. diluar dari fungsi main().Bab 9 : Fungsi cout<<"\nNilai didalam funsi main() = : "<<a. } lokal() { int a = 10. lokal().*/ #include<conio. } Hal ini terlihat bahwa variabel a yang berada diluar fungsi local tidak dikenal oleh fungsi local. Hasil Contoh-7 9. yang selama ini pendeklarasian variabel selalu didalam fungsi main(). 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. cout<<"\nNilai a didalam fungsi lokal() = "<<a.h> #include<stdio.h> #include<iostream.

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

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

Hasil Contoh-10 Contoh-11 /* -------------------------. getch().h> #include<iostream.*/ 137 Frieyadie.h> #include<stdio. } main() { int k.*/ /* Penggunaan inlide function */ /* -------------------------.Kom . S. k < 20.10. 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.h> inline int kali(int i. /* -------------------------. while dan do – while. for(k = 1.*/ #include<conio.7. int j) { return(i * j). } Output yang akan dihasilkan. clrscr(). k*2)<<" ". k++) cout<<kali(k. Inline function dideklarasikan dengan menambahkan kata kunci inline didepan tipe data.*/ /* Penggunaan inlide function */ /* -------------------------.Bab 9 : Fungsi 9. dari program contoh-10 diatas adalah : Contoh-10 Gambar 9.

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

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

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

... S.. <hasil proses> Jumlah Bayar Penyewaan Sebesar Rp.. ..7778 Pemanggilan dengan tipe data integer Proses dengan tipe data integer 100 sama dengan 37 Penjelasan No. < hasil proses > Penyewa dengan Nama .. <diinput> Kode Buku [C/K/N] : . ...... ---------------------------Nama Penyewa Buku : . <hasil proses> Jenis Buku : .....Kecil-Kecilan"..Bab 9 : Fungsi Pemanggilan dengan tipe data float Proses dengan tipe data float 100 sama dengan 37. 4 Buatlah program untuk menghitung jumlah pembayaran pada perpustakaan "Kecil-Kecilan".. <diinput> Banyak Pinjam : ...Kom 141 .. 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 ". <diinput> Tampilan Keluaran yang diinginkan : Tarif Sewa Rp..... <hasil proses> Frieyadie.

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

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

h> #include<iostream.h> #define PI 3.*/ /* Program Penggunaan #define */ /* -------------------------.*/ /* Program Penggunaan #define */ /* -------------------------.h> #include<conio.*/ #include<stdio. ls_kubus.141592 #define L(n) PI*n*n main() { clrscr(). cout<<"Jari-jari = 5 adalah "<<L(5)<<endl. Contoh-1 /* -------------------------. cout<<"Jari-jari = 10 adalah "<<L(10)<<endl.*/ #include<stdio. 144 Pemrogramman C++ . dari program contoh-1 diatas adalah : Gambar 9.1 Hasil Contoh-1 Contoh-2 /* -------------------------.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. } Output yang akan dihasilkan.h> #include<conio. # define akan mengganti semua nama konstanta tadi dengan teksnya sebelum proses kompilasi dimulai.Bab 10 : Macro Setelah #define ditentukan didalam program cukup dituliskan nama_konstantanya saja.h> #include<iostream. getche(). cout<<"Luas Lingkaran dengan : "<<endl.

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

Hasil Contoh-3 10. dari program contoh-3 diatas adalah : Gambar 9.1. j++) { if(a[j-1] > a[j]) SWAP(a[j-1].2. for(i = 0. i++) { for(j = 1. i < n. 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 “. Dalam penulisan #include ada dua bentuk penulisan : #include "nama_file_header" atau #include <nama_file_header> Pada bentuk penulisan #include mempunyai arti yang berbeda.a[j]).Bab 10 : Macro /****************** Fungsi Bubble Sort *******************/ void bubble_srt( int a[].3. # include Penjelasan Preprocessor #include telah dibahas pada bab sebelumnya. j < (n-i). int n ) { int i. • 146 #include <nama_file_header> Pemrogramman C++ . yaitu berfungsi untuk memasukkan atau menyertakan file-file header kedalam program yang akan dibuat. j. } } } Output yang akan dihasilkan.

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

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

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

Contoh : 150 Benuk Penulisan Pemrogramman C++ . hal ini dapat dilakukan jika sudah konstanta didefiniskan pada bagian #define. pernyataan akan diabaikan. jika nama-konstanta tidak terdefinisi maka.1. jika terpenuhi maka pengenal LEBAR_MAKS nilainya akan dihapus. hal ini merupakan parameter yang khusus yang harus terdefinisi.7.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].# ifndef Penjelasan Preprocessor #ifdef dan #ifendef memberikan bagian dari program yang akan dikompile. Hasil dari program contoh-7 diatas adalah : Gambar 9. # ifdef . pernyataan akan dijalankan. Hasil Contoh-7 10. #endif Penjelasan : Jika nama-konstanta terdefinisi maka. } Hal ini terlihat bahwa #if LEBAR_MAKS>200 memeriksa apakah LEBAR_MAKS>200. cout<<LEBAR_MAKS.7. #ifdef nama-konstanta pernyataan.

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

kemudian simpan dengan nama : atur. File ini sebenarnya berisikan deklarasi fungsi dan definisi konstanta.h contoh pembuatan file header untuk pengaturan. Pembuatan File Header Penjelasan File Header adalah suatu file dengan akhiran .Bab 10 : Macro 10. #endif Sebagai latihan berikut kita akan membuat suatu file header sendiri yang akan digunakan pada file editor. Berikut contoh file header standar yang disediakan oleh Borland C++.h . */ #ifndef __TIME_T #define __TIME_T typedef long time_t.2.h . selanjutnya Compile file atur. */ #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. dengan cara yang sama seperti membuat file editor.h. Yang harus diperhatikan pada saat menyimpan file header yang telah dibuat harus digunakan akhiran . pada folder kerja anda folder include Contoh-9 /* atur.1988 All Rights Reserved. Copyright (c) Borland International 1987.h. Copyright (c) Frieyadie 2001 All Rights Reserved.h Types for dealing with time. Selain file-file header standar yang disediakan oleh C++. 152 Pemrogramman C++ . kita dapat juga membuat file header sediri. /* types. Buatlah program file heder dibawah ini.

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

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

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

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

cout<<"Nilai Akhir = "<<mhs[i]. S. Hasil Contoh 3 11. 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.Kom 159 . dari program contoh-3 diatas adalah : Gambar 11. Berikut contoh sederhana yang anda dapat lihat pada contoh program berikut : /* -----------------------------------------/* Program Penggunaan structure pada function /* Nama File : struct4. i++) { cout<<"Data Ke .h> #include<iostream.nama<<endl. cout<<"NIM = "<<mhs[i]."<<j++<<endl. j=1.h> #include<conio.nim<<endl. cout<<"Nama = "<<mhs[i].cpp /* -----------------------------------------#include<stdio.Bab 11 : Structure for(i=0.4.h> char ket(float n). */ */ */ */ Contoh-4 Frieyadie. i<2.3. } Output yang akan dihasilkan.nilai<<endl. cout<<endl. } getch(). main() { int i. k=1.

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

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

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

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

Daftar Pustaka 128 Pemrograman C++ .

Sign up to vote on this title
UsefulNot useful