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

Daftar Isi Frieyadie. S.Kom ii .

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

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

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

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

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

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

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

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

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

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

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

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

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. d. Model Huge Penjelasan Model memori yang menyediakan jumlah memori untuk menyimpan satu jenis data. c. b.Bab 1 : Pengenalan Bahasa C++ a. d. Model Tiny Penjelasan Model memori yang menyediakan jumlah memori untuk program dan data tidak lebih dari 64 Kb. c. S. Model Small Penjelasan Model memori yang menyediakan jumlah memori untuk masing-masing program dan data tidak lebih dari 64 Kb.Kom 9 . Frieyadie.

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

yaitu diantaranya adalah : Tabel 2.d 32767 -2.1 x 10+4932 5–7 15 – 16 19 Tipe Data Tambahan.4 x 10-38 s.1. 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.Bab 2 : Pengenalan Model Data.d 1.1.d 2.647 3.147.435. 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.294.2. S.d 3.d 1. adalah : Unsigned digunakan bila data yang digunakan hanya data yang positif saja.147. Pengenalan Tipe Data Penjelasan Borland C++ memiliki 7 tipe data dasar.967.435.d 32767 -32768 s.648 s.7 x 10+308 3. Perintah Masukan dan Keluaran 2.4 x 10-4932 s.7 x 10-308 s.d 127 -32768 s.295 Frieyadie. Perintah Masukan dan Keluaran Pemrogramman C++ Bab 2 : Pengenalan Model Data. yang dimiliki oleh Borland C++.4 x 10+38 1.Kom 11 . Tabel 2.

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

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

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

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

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

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

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

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

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

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

Bab 2 : Pengenalan Model Data, Perintah Masukan dan Keluaran

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

Contoh-11

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

Gambar 2.11. Hasil Contoh-11

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

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

Hexadecimal = basis 16

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

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

Gambar 2.12. Hasil Contoh-12

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

Bab 2 : Pengenalan Model Data, Perintah Masukan dan Keluaran

Contoh-13

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

Gambar 2.13. Hasil Contoh-13

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

24

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Operator Aritmatika Penjelasan Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah : Tabel 3. seperti penjumlahan.1. 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.Kom 39 . pengurangan dan lain-lain.Bab 3: Operator Borland C++ Pemrogramman C++ Bab 3 : Operator Borland C++ Penjelasan Operator merupakan simbol atau karakter yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi atau manipulasi. adalah : Frieyadie. S. 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.1.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

bentuk penulisannya sebagai berikut : Frieyadie.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. maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan”. S. 4. Jika pemakaian if diikuti dengan pernyataan majemuk. Borland C++ menyediakan beberapa perintah antara lain. Untuk keperluan pengambilan keputusan.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. pernyataan majemuk atau pernyataan kosong.Kom 59 . Pernyataan IF Penjelasan Pernyataan if mempunyai pengertian.1. “ Jika kondisi bernilai benar. Diagram Alir IF Bentuk umum (kondisi) if if dari pernyataan pernyataan.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

cout<<"\nLuas Bujur Sangkar = "<<luas_bs. luas_bs = luas(4. dapat dilihat dari program berikut : /* -----------------------. main() { float luas_bs.*/ #include<conio.1. S. dari program contoh-4 diatas adalah : Gambar 9. clrscr(). Hasil Contoh-4 9. } Output yang akan dihasilkan. Pengiriman Data Ke Fungsi 9. } Keterangan : Frieyadie.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. Pengiriman Data Konstanta Ke Fungsi. } luas(float sisi) { return(sisi*sisi).5.Kom 131 Contoh-5 .4.h> luas(float sisi).*/ /* Pengriman data Konstanta */ /* -----------------------.h> #include<stdio.5.h> #include<iostream.25). getch().

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

S Nilai Murni Absensi Nilai Murni Tugas Nilai Murni U.. 3 : . Tampilan yang diinginkan Program Hitung Nilai Akhir Mata Kuliah Masukkan Nilai Absensi Masukkan Nilai Tugas Masukkan Nilai U..T.S Nilai U.h.S Nilai Murni U.A..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 : ….A...T.. <hasil-proses> 154 Pemrogramman C++ . < hasil proses > : .T. <di-input> : .S Masukkan Nilai U.. < hasil proses > pada suatu Buatlah program menghitung nilai akhir perkuliahan matakuliah. 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.Bab 10 : Macro Tampilan Yang Diinginkan : Masukkan Nilai Jari-jari Luas Lingkaran Keliling Lingkaran Penjelasan No.A.

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

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

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

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

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

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

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

Daftar Pustaka 128 Pemrograman C++ .

Sign up to vote on this title
UsefulNot useful