Borland C

++

DIKTAT KULIAH PEMROGRAMAN KOMPUTER

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

Pembahasan

• • • • • • • • • •

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

Frieyadie, S.Kom

Kata Pengantar

BORLAND C++

Kata Pengantar

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

Jakarta, 17 Maret 2007

Frieyadie, S.Kom Penulis

Frieyadie, S.Kom

i

S.Daftar Isi Frieyadie.Kom ii .

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

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

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

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

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

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

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

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

Kik Menu Debug Run b. 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. Menjalankan Program Penjelasan Proses Run merupakan suatu proses menterjemahkan program. Kotak Dialog Compile 1. melakukan proses linking. seperti dibawah ini : Gambar 1. seperti dibawah ini : Frieyadie.Bab 1 : Pengenalan Bahasa C++ 1. S. membuat file eksekusi ( . Menekan HotKey Ctrl + F9 Selanjutnya tampil kotak dialog Run. Caranya adalah : Compile a.5.6. Caranya adalah : a. Kik Menu Project b.5. Menekan HotKey Alt + F9 Selanjutnya tampil kotak dialog Compile.Kom 5 .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

pengurangan dan lain-lain. Operator Aritmatika Operator * / % + − Keterangan Perkalian Pembagian Sisa Pembagian Penjumlahan Pengurangan Contoh 4 * 5 8 / 2 5 % 2 7 + 2 6 − 2 Operator yang tergolong sebagai operator Unary.1. Operator Aritmatika Penjelasan Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah : Tabel 3. seperti penjumlahan. 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.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.Kom 39 . S.1.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

h> #include<iostream.h> Pemrogramman C++ 66 . Pernyataan break menunjukan bahwa perintah siap keluar dari switch.h> #include<conio. break.bab 4 : Operasi Penyeleksian Kondisi Output yang akan dihasilkan. … perintah. …… …… default : … perintah. case konstanta-2 : … perintah.case ini memiliki kegunaan sama seperti if – else bertingkat. Bentuk penulisan perintah ini sebagai berikut : switch (ekspresi integer atau karakter ) { case konstanta-1 : … perintah. Jika pernyataan ini tidak ada. Contoh-5 #include<stdio.4 Hasil Contoh-4 4. maka program akan diteruskan kecabang – cabang yang lainnya. dari program contoh-4 diatas adalah : Gambar 4. tetapi penggunaannya untuk memeriksa data yang bertipe karakter atau integer.2. break.case Penjelasan Bentuk dari switch . Pernyataan switch .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. … perintah. … perintah. Pernyataan switch .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Bab 5 : Proses Perulangan 4. Buatlah program untuk menghitung perkalian nilai kolom dengan baris berikut tampilan keluaran yang diinginkan : 1 2 3 4 5 2 4 6 8 10 3 6 9 10 15 4 8 12 16 20 5 10 15 20 25 88 Pemrogramman C++ . Buatlah program untuk menghitung perkalian deret bilangan 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 ---------. 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.+ 110 6.

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

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

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

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

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

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

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

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

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

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

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

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

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

int i. Contoh-2 /* ----------------------------.45.h> #include<iostream.h> void main() { int nilai[5] = {56. 67. 87.5.*/ /* Inisialisasi Array Dimensi 1 */ /* ----------------------------.2.Bab 7 : Array 7. dari program contoh-2 diatas adalah : Gambar 7. 72}. 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 }.7. cout<<<a<<endl.h> #include<iomanip. 78. 66.5.*/ #include<conio.2.1. } getch(). for(i=0."<<i<<" = ". i<5. 98. } Output yang akan dihasilkan.9 }. 76. 57. clrscr(). Contoh float nilai[5] = {56. i++) { cout<<"Nilai Array Index ke .

dimana indeks pertama menunjukan baris dan indeks kedua menunjukan kolom.1 diatas maka dapat dituliskan kedalam array dimensi dua berikut : int data_jual[3][3]. S. Array dimensi dua dapat digunakan seperti pendatan penjualan. 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.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. 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.Bab 7 : Array 7.2.Kom 103 . pendataan nilai dan lain sebagainya.

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

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

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

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

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

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

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

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

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

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

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

Pada umumnya kita tidak dapat menentukan dimana variabel akan ditempatkan Terkadang secara otomatis dilakukan oleh kompiler dan sistem operasi yang sedang aktif. S. Hal ini dapat dilakukan dengan memberikan suatu identifier “&” (ampersand sign) didepan nama variabel. Operator reference ( * ) 8. 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. // AMIR sama dengan ILHAM (75) RAKA = &ILHAM.1.Kom 115 .1. Operator Pointer Penjelasan Terdapat dua macam operator pointer yang disediakan oleh Borland C++: 1. Dengan menggunakan operator dereference ( & ) ini. Operator dereference ( & ) 2. 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.1. suatu variabel akan menghasilkan alamat lokasi memori. // RAKA sama dengan Address Of ILHAM (0x0012ff88) Frieyadie. 8. Sebagai contoh ILHAM ditempatkan pada memori dengan alamat 0x0012ff88 dan dideklarasikan sebagai berikut : ILHAM = 75. AMIR = ILHAM. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Daftar Pustaka 128 Pemrograman C++ .

Sign up to vote on this title
UsefulNot useful