0% menganggap dokumen ini bermanfaat (0 suara)
161 tayangan70 halaman

Modul Pemrograman Dasar Semester 1

Dokumen tersebut membahas tentang algoritma pemrograman yang mencakup konsep algoritma, struktur algoritma, cara penulisan algoritma menggunakan bahasa alami dan pseudocode, serta penggunaan flowchart. Secara khusus dibahas tiga cara penulisan algoritma yaitu structured english, pseudocode, dan flowchart beserta contoh-contohnya.

Diunggah oleh

Frizqy
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
161 tayangan70 halaman

Modul Pemrograman Dasar Semester 1

Dokumen tersebut membahas tentang algoritma pemrograman yang mencakup konsep algoritma, struktur algoritma, cara penulisan algoritma menggunakan bahasa alami dan pseudocode, serta penggunaan flowchart. Secara khusus dibahas tiga cara penulisan algoritma yaitu structured english, pseudocode, dan flowchart beserta contoh-contohnya.

Diunggah oleh

Frizqy
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 70

1

2
DAFTAR ISI
Halaman
Kompetensi Dasar Semester 1
Kegiatan Belajar 1 Algoritma Pemrograman
1) Konsep Algoritma ................................................................................................................. 4
2) Struktur Algoritma ………………………………………………………………………………………………………… . 4
3) Algoritma menggunakan bahasa natural Algoritma ………………………………………………………… 8
4) Pseudocode ……………………………………………………………………………………………………………………. 9
5) Flowchart dan penggunaan Tool Flowchart …………………………………………………………………….. 9
Kegiatan Belajar 2 Instalasi Kompilator C++
1) Pengenalan bahasa pemrograman ………………………………………………………………………………….. 20
2) Instalasi Kompilator c++ ………………………………………………………………………………………………….. 21
3) Menu dan Tools Kompilator c++ ……………………………………………………………………………………… 21
Kegiatan Belajar 3 Perancangan C++
1) Struktur Program C++ ……………………………………………………………………………………………………… 26
2) Header pada c++ …………………………………………………………………………………………………………….. 27
3) Punctuator pada c++ ………………………………………………………………………………………………………. 27
4) Komentar pada c++ ………………………………………………………………………………………………………… 28
Kegiatan Belajar 4 Tipe Data, Variabel, Operator, dan Ekspresi
1) Tipe Data pada c++ ………………………………………………………………………………………………………… 29
2) Variabel pada c++ ………………………………………………………………………………………………………….. 32
3) Operator pada c++ ………………………………………………………………………………………………………… 41
4) Ekspresi pada c++ ………………………………………………………………………………………………………….. 46
Kegiatan Belajar 5 Penerapan Operator pada C++
1) operasi aritmatika pada c++ …………………………………………………………………………………………… 47
2) operasi logika pada c++ ………………………………………………………………………………………………….. 50
Kegiatan Belajar 6 Struktur Kontrol Percabangan
1) Percabangan 1 kondisi …………………………………………………………………………………………………… 52
2) Percabangan 2 kondisi …………………………………………………………………………………………………… 53
3) Percabangan lebih dari 2 kondisi …………………………………………………………………………………… 54
4) Percabangan bersarang ………………………………………………………………………………………………… 55
Kegiatan Belajar 7 Struktur Kontrol Perulangan
1) Struktur while do ………………………………………………………………………………………………………… 57
2) Struktur Do while ………………………………………………………………………………………………………… 59
3) Struktur For ……………………………………………………………………………………………………………….. 61
Kegiatan Belajar 8 Perancangan Array pada C++
1) Pengertian Array ………………………………………………………………………………………………………… 65
2) Inisialisasi Array ………………………………………………………………………………………………………….. 67
3) Array Multi Dimensi ……………………………………………………………………………………………………. 67
Daftar Pustaka ……………………………………………………………………………………………………………………….. 69

3
Kompetensi Dasar Pemrograman Dasar Semester 1
Kompetensi Dasar Materi Pokok
KD 3.1 - 4.1 Algoritma Pemrograman
KD 3.2 – 4.2 Instalasi Kompilator C++
KD 3.3 – 4.3 Perancangan C++
KD 3.4 – 4.4 Tipe Data, Variabel, Operator, dan Ekspresi
KD 3.5 – 4.5 Penerapan Operator pada C++
KD 3.6 – 4.6 Struktur Kontrol Percabangan
KD 3.7 – 4.7 Struktur Kontrol Perulangan
KD 3.8 – 4.8 Perancangan Array pada C++

4
KEGIATAN BELAJAR 1
ALGORITMA PEMROGRAMAN

A. Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 1 ini siswa diharapkan dapat :
6) Memahami Konsep Algoritma
7) Memahami Struktur Algoritma
8) Memahami Algoritma menggunakan bahasa natural Algoritma
9) Memahami Pseudocode
10) Memahami Flowchart dan penggunaan Tool Flowchart

B. Uraian Materi
1. Pengantar Algoritma Pemrograman
Belajar memprogram adalah belajar tentang strategi pemecahan masalah, metodologi dan
sistematika pemecahan masalah tersebut kemudian menuangkannya dalam suatu notasi
yang disepakati bersama.
“lebih bersifat pemahaman persoalan, analisis, sintesis”
Belajar bahasa pemrograman adalah belajar memakai suatu bahasa, aturan sintaks
(tatabahasa), setiap instruksi yang ada dan tata cara pengoperasian kompilator atau
interpreter bahasa yang bersangkutan pada mesin tertentu.

1.1 Definisi Algortima


Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara
sistematis.
Algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat
memiliki tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan waktu
lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi.

1.2 Struktur Algortima


Perhatikan algoritma sederhana berikut :
Jika seseorang ingin mengirim surat kepada kenalannya di tempat lain, langkah yang harus
dilakukan adalah:
1. Menyiapkan Peralatan Tulis

5
2. Menulis surat
3. Surat dimasukkan ke dalam amplop tertutup
4. Amplop ditempeli perangko secukupnya.
5. Pergi ke Kantor Pos terdekat untuk mengirimkannya

Algoritma menghitung luas persegi panjang:


1. Masukkan panjang (P)
2. Masukkan lebar (L)
3. Luas P * L
4. Tulis Luas

Pembuatan algoritma mempunyai banyak keuntungan di antaranya:


a) Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman
manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan
komputer yang melaksanakannya.
b) Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
c) Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena
algoritmanya sama.

Beberapa hal yang perlu diperhatikan dalam membuat algoritma:


a) Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah.Deskripsi
tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.
b) Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa
pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi
algoritmik.
c) Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini
dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi
algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu,
maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa
pemrograman secara umum.
d) Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam
notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh
komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau

6
diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat
bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan
spesifikasi mesin yang menjalannya. Pseudocode adalah kode yang mirip dengan
instruksi kode program sebenarnya.
e) Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan
suatu permasalahan ke dalam bahasa pemrograman.
f) Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan oleh
komputer, algoritma harus ditranslasikan ke dalam notasi bahasa pemrograman
Perhatikan algoritma sederhana berikut :
Algoritma menghitung luas segitiga
1. Start
2. Baca data alas dan tinggi.
3. Luas adalah alas kali tinggi kali 0.5
4. Tampilkan Luas
5. Stop
Penjelasan :
Algoritma di atas adalah algoritma yang sangat sederhana, hanya ada lima langkah. Pada
algoritma ini tidak dijumpai perulangan ataupun pemilihan. Semua langkah dilakukan hanya
satu kali.
Sekilas algoritma di atas benar, namun apabila dicermati maka algoritma ini mengandung
kesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data untuk alas dan tinggi.

Hasil perbaikan algoritma perhitungan luas segitiga


1. Start
2. Baca data alas dan tinggi.
3. Periksa data alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol maka
lanjutkan ke langkah ke 4 jika tidak maka stop
4. Luas adalah alas kali tinggi kali 0.5
5. Tampilkan Luas
6. Stop
Dari penjelasan di atas dapat diambil kesimpulan pokok tentang algoritma. Pertama,
algoritma harus benar. Kedua algoritma harus berhenti, dan setelah berhenti, algoritma
memberikan hasil yang benar.

7
Contoh : Algoritma Berangkat Sekolah
Mulai
Bangun dari tempat tidur
Mandi Pagi
Sarapan Pagi
Pergi Ke Sekolah
Cari Ruang Kelas
Masuk kelas untuk Belaja
Selesai

8
Cara penulisan algortima
Ada tiga cara penulisan algoritma, yaitu :
1. Structured English (SE)
SE merupakan alat yang cukup baik untuk menggambarkan suatu algoritma. Dasar dari SE
adalah Bahasa Inggris, namun kita dapat memodifikasi dengan Bahasa Indonesia sehingga
kita boleh menyebutnya sebagai Structured Indonesian (SI).

”SE atau SI lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasikan
kepada pemakai perangkat lunak”

2. Pseudocode
Pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya.
Pseudocode didasarkan pada bahasa pemrograman yang sesungguhnya seperti BASIC,
FORTRAN atau PASCAL. Pseudocode yang berbasis bahasa PASCAL merupakan pseudocode
yang sering digunakan.
“Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode
program”
Contoh Pseudocode :
1. Start
2. READ alas, tinggi
3. Luas = 0.5 * alas * tinggi
4. PRINT Luas
5. Stop
Pada Contoh diatas tampak bahwa algoritma sudah sangat mirip dengan bahasa BASIC.
Pernyataan seperti READ dan PRINT merupakan keyword yang ada pada bahasa BASIC yang
masing-masing menggantikan kata “baca data” dan “tampilkan”. Dengan menggunakan
pseudocode seperti di atas maka proses penterjemahan dari algoritma ke kode program
menjadi lebih mudah.

1.3 Membuat Alur Logika Pemograman


A. Penyajian atau Penulisan Algoritma
Penyajian algoritma secara garis besar bisa dalam 2 bentuk penyajian yaitu tulisan dan
gambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur bahasa tertentu

9
(misalnya bahasa Indonesia atau bahasa Inggris) dan pseudocode.
Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya seperti
Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan
dikomunikasikan kepada pemrogram. Sedangkan algoritma disajikan dengan gambar, yaitu
dengan Flowchart

B. Flowchart (Diagram Alir)


Flowchart atau bagan alir adalah skema/bagan (chart) yang menunjukkan aliran (flow) di
dalam suatu program secara logika.
Flowchart merupakan alat yang banyak digunakan untuk menggambarkan algoritma dalam
bentuk notasi-notasi tertentu. Flowchart merupakan gambar atau bagan yang
memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini
dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses
tertentu. Sedangkan antara proses digambarkan dengan garis penghubung. Dengan
menggunakan flowchart akan memudahkan kita untuk melakukan pengecekan bagian-
bagian yang terlupakan dalam analisis masalah. Di samping itu flowchart juga berguna
sebagai fasilitas untuk berkomunikasi antara pemrogram yang bekerja dalam tim suatu
proyek.
Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart, namun ada
beberapa anjuran:
1) Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga
jalannya proses menjadi singkat.
2) Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk
memperjelas.

10
3) Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.

Berikut merupakan beberapa contoh simbol flowchart yang disepakati oleh dunia
pemrograman:

Penjelasan lebih lanjut :


Simbol-simbol bagan alir program (Flowchart)

 Notasi Membuat algoritma sederhana untuk menyelesaikan


permasalahan menggunakan bahasa natural, flowchart dan pseudocode

 Notasi ini disebut Data yang digunakan untuk mewakili data input
atau output atau menyatakan operasi pemasukan data dan pencetakan hasil


Notasi ini disebut Process yang digunakan untuk mewakili suatu
proses.

11
 Notasi ini disebut Decision yang digunakan untuk suatu pemilihan,
penyeleksian kondisi di dalam suatu program

 Notasi ini disebut Preparation yang digunakan untuk memberi nilai


awal, nilai akhir, penambahan/pengurangan bagi suatu variabel counter.

 Notasi ini disebut Predefined Process yang digunakan untuk


menunjukkan suatu operasi yang rinciannya ditunjukkan ditempat lain (prosedur, sub-
prosedur, fungsi)

 Notasi ini disebut Connector yang digunakan untuk menunjukkan sambungan dari
flowchart yang terputus di halaman yang sama atau halaman berikutnya.

 Notasi ini disebut Arrow yang digunakan untuk menunjukkan arus data atau aliran
data dari proses satu ke proses lainnya.


12
Contoh program Flowchart

Bagan alir logika program Bagan alir program komputer terinci

13
C. Struktur Dasar Algoritma
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut
dapat berupa runtunan aksi (sequence), pemilihan aksi (selection), pengulangan aksi
(iteration) atau kombinasi dari ketiganya. Jadi struktur dasar pembangunan algoritma ada
tiga, yaitu:
1. Struktur Runtunan / Beruntun : Digunakan untuk program yang pernyataannya
sequential atau urutan.
2. Struktur Pemilihan / Percabangan : Digunakan untuk program yang menggunakan
pemilihan atau penyeleksian kondisi.
3. Struktur Perulangan : Digunakan untuk program yang pernyataannya akan dieksekusi

berulang-ulang.

1. Struktur Algoritma Runtunan / Berurutan :


Ada tiga struktur dasar yang digunakan dalam membuat algoritma yaitu struktur berurutan
(sequencing), struktur pemilihan/keputusan/percabangan (branching) dan struktur
pengulangan (looping). Sebuah algoritma biasanya akan menggabungkan ketiga buah
struktur ini untuk menyelesaikan masalah.

Struktur berurutan dapat kita samakan dengan mobil yang sedang berjalan pada jalur lurus
yang tidak terdapat persimpangan seperti tampak pada Gambar disamping Mobil tersebut
akan melewati kilometer demi kilometer jalan sampai tujuan tercapai. Struktur berurutan
terdiri satu atau lebih instruksi.

Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya, yaitu sebuah
instruksi dieksekusi setelah instruksi sebelumnya selesai dieksekusi. Urutan instruksi
menentukan keadaan akhir dari algoritma. Bila urutannya diubah, maka hasil akhirnya
mungkin juga berubah.

Menurut Goldshlager dan Lister (1988) struktur berurutan mengikuti ketentuan-ketentuan


sebagai berikut:
 Tiap instruksi dikerjakan satu persatu
 Tiap instruksi dilaksanakan tepat sekali, tidak ada yang diulang
 Urutan instruksi yang dilaksanakan pemroses sama dengan urutan aksi sebagaimana

14
yang tertulis di dalam algoritmanya
 Akhir dari instruksi terakhir merupakan akhir algoritma.
Contoh bagan alir logika program berurutan (sequencing)

1. Struktur Algoritma Percabangan


Sebuah program tidak selamanya akan berjalan dengan mengikuti struktur berurutan,
kadang-kadang kita perlu merubah urutan pelaksanaan program dan menghendaki agar
pelaksanaan program meloncat ke baris tertentu. Peristiwa ini kadang disebut sebagai
percabangan/pemilihan atau keputusan. Hal ini seperti halnya ketika mobil/motor berada
dalam persimpangan

Pada struktur percabangan, program akan berpindah urutan pelaksanaan jika suatu kondisi
yang disyaratkan dipenuhi. Pada proses seperti ini simbol flowchart Decision harus
digunakan. Simbol decision akan berisi pernyataan yang akan diuji kebenarannya. Nilai hasil
pengujian akan menentukan cabang mana yang akan ditempuh.

Contoh Struktur percabangan untuk masalah batasan umur.


Sebuah aturan untuk menonton sebuah film tertentu adalah sebagai berikut, jika usia
penonton lebih dari 17 tahun maka penonton diperbolehkan dan apabila kurang dari 17
tahun maka penonton tidak diperbolehkan nonton. Buatlah flowchart untuk permasalahan
tersebut.

15
Penyelesaian:
Permasalahan diatas merupakan ciri permasalahan yang menggunakan struktur
percabangan. Hal ini ditandai dengan adanya pernyataan jika ..maka ...(atau If ... Then dalam
Bahasa Inggris.
Bagan alir logika (Flowchart) penyelesaian masalah nonton film

2. Struktur Algoritma Perulangan / Pengulangan


Dalam banyak kasus seringkali kita dihadapkan pada sejumlah pekerjaan yang harus diulang
berkali.Salah satu contoh yang gampang kita jumpai adalah balapan mobil

Struktur pengulangan terdiri dari dua bagian :


 Kondisi pengulangan, yaitu syarat yang harus dipenuhi untuk melaksanakan pengulangan.
Syarat ini biasanya dinyatakan dalam ekspresi Boolean yang harus diuji apakah bernilai
benar (true) atau salah (false)
 Badan pengulangan (loop body), yaitu satu atau lebih instruksi yang akan diulang

Pada struktur pengulangan, biasanya juga disertai bagian inisialisasi dan bagian terminasi.
Inisialisasi adalah instruksi yang dilakukan sebelum pengulangan dilakukan pertama kali.
Bagian insialisasi umumnya digunakan untuk memberi nilai awal sebuah variable.
16
Sedangkan terminasi adalah instruksi yang dilakukan setelah pengulangan selesai
dilaksanakan. Ada beberapa bentuk pengulangan yang dapat digunakan, masing-masing
dengan syarat dan karakteristik tersendiri. Beberapa bentuk dapat dipakai untuk kasus yang
sama, namun ada bentuk yang hanya cocok untuk kasus tertentu saja.
Pemilihan bentuk pengulangan untuk masalah tertentu dapat mempengaruhi kebenaran
algoritma. Pemilihan bentuk pengulangan yang tepat bergantung pada masalah yang akan
diprogram.
Bagan alir logika (flowchart) untuk mencetak pernyataan sebanyak 100 kali

17
Bagan alir logika (Flowchart) untuk mencetak anggota suatu himpunan.

 Struktur pengulangan dengan For


Pengulangan dengan menggunakan For, merupakan salah teknik pengulangan yang paling
tua dalam bahasa pemrograman. Hampir semua bahasa pemrograman menyediakan
metode ini, meskipun sintaksnya mungkin berbeda. Pada struktur For kita harus tahu
terlebih dahulu seberapa banyak badan loop akan diulang. Struktur ini menggunakan
sebuah variable yang biasa disebut sebagai loop s counter, yang nilainya akan naik atau
turun selama proses pengulangan.
Contoh :
Diketahui sebuah himpunan A yang beranggotakan bilangan 1, 3, 5, .., 19. Buatlah flowchart
untuk mencetak anggota himpunan tersebut.

Penyelesaian:
Pada contoh ini, kita mencoba menentukan hasil dari sebuah flowchart . Bagaimana
menurut kalian jawabannya? Marilah kita uraikan jalannya fowchart tersebut. Pada
flowchart, setelah Start, kita meletakkan satu proses yang berisi pernyataan A = 1. Bagian
inilah yang disebut inisialisasi . Kita memberi nilai awal untuk A = 1. Variabel counter-nya
adalah X dengan nilai awal 1 dan nilai akhir 10, tanpa increment (atau secara default
18
increment-nya adalah 1). Ketika masuk ke badan loop untuk pertama kali maka akan dicetak
langsung nilai variabel A. Nilai variabel A masih sama dengan 1. Kemudian proses berikutnya
adalah pernyataan A = A + 2. Pernyataan ini mungkin agak aneh, tapi ini adalah sesuatu yang
pemrograman. Arti dari pernyataan ini adalah gantilah nilai A yang lama dengan hasil
penjumlah nilai A lama ditambah 2. Sehingga A akan bernilai 3. Kemudian dilakukan
pengulangan yang ke-dua. Pada kondisi ini nilai A adalah 3, sehingga yang tercetak oleh
perintah print adalah 3. Baru kemudian nilai A kita ganti dengan penjumlahan A + 2. Nilai A
baru adalah 5. Demikian seterusnya. Sehingga output dari flowchart ini adalah 1,3, 5, 7, ..,
19.

 Struktur pengulangan dengan While


Pada pengulangan dengan For, banyaknya pengulangan diketahui dengan pasti karena nilai
awal (start) dan nilai akhir (end) sudah ditentukan diawal pengulangan. Bagaimana jika kita
tidak tahu pasti harus berapa kali mengulang? Pengulangan dengan While merupakan
jawaban dari permasalahan ini. Seperti halnya For, struktur pengulangan dengan While juga
merupakan struktur yang didukung oleh hampir semua bahasa pemrograman namun
dengan sintaks yang berbeda.
Struktur While akan mengulang pernyataan pada badan loop sepanjang kodisi pada While
bernilai benar. Dalam artian kita tidak perlu tahu pasti berapa kali diulang. Yang penting
sepanjang kondisi pada While dipenuhi maka pernyataan pada badan loop akan diulang.
Penyelesaian: Perhatikan Gambar. bisakah kalian menentukan hasil dari flowchart tersebut?
Perhatikan tahapan eksekusi flowchart berikut ini.

19
 Pada flowchart ini ada dua variabel yang kita gunakan yaitu A dan B. Kedua variabel
tersebut kita inisialisasi nilai awalnya (A = 1 dan B = 0) sebelum proses loop terjadi.
Variabel A adalah variabel counter.
 Pada simbol decision, nilai A akan diperiksa apakah memenuhi kondisi (<b10). Jika Ya
maka perintah berikutnya dieksekusi, jika tidak maka program akan berhenti. Pada
awal eksekusi ini kondisi akan terpenuhi karena nilai A= 1.
 Jalankan perintah Print B.
 Nilai variabel A kemudian diganti dengan nilai A lama (1) ditambah 2. Sehingga nilai
variabel A baru adalah 3. Sedangkan nilai variabel B = 9 (hasil perkalian A = 3).
 Program akan berputar kembali untuk memeriksa apakah nilai variabel A masih lebih
kecil dari 10. Pada kondisi ini nilai A = 3, sehingga kondisi masih terpenuhi. Kemudian
langkah berulang ke langkah ke 3. Begitu seterusnya sampai nilai variabel A tidak lagi
memenuhi syarat kurang dari 10.

LATIHAN
1. Buatkan Flowchart untuk mencari Luas persegi empat ?
2. Buatlah Algoritma dan Flowchart untuk menentukan kelulusan siswa ?
Dengan ketentuan :
 Jika Nilai >= 70 maka Lulus
 Jika Nilai <= 70 maka Tidak Lulus

20
KEGIATAN BELAJAR 2
INSTALASI KOMPILATOR C++

A. Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 2 ini siswa diharapkan dapat :
4) Memahami Pengenalan bahasa pemrograman
5) Memahami Instalasi Kompilator c++
6) Memahami Menu dan Tools Kompilator c++

B. Uraian Materi
1. Pengenalan bahasa pemrograman
Bahasa permograman dalam bahasa inggris berarti programming language yaitu bahasa
komputer yang merupakan instruktur standar untuk memerintahkan komputer.
Definisi bahasa pemrograman adalah suatu kumpulan yang berisi aturan sintaks dan
semantik yang dipakai untuk menerjemahkan perintah yang diberikan oleh pengguna atau
user untuk mengerjakan proses tertentu pada komputer. Fungsi dari bahasa pemrograman
adalah menghubungkan antara pengguna dan mesin komputer.
Penerjemah Bahasa Pemrograman
Untuk menterjemahkan bahasa pemrograman yang kita tulis maka diperlukan Compiler dan
interpreter.
Compiler adalah suatu program yang menterjemahkan bahasa program (Source code) ke
dalam bahasa obyek (object code) secara keseluruhan program.
Interpreter berbeda dengan Compiler, interpreter menganalisis dan mengeksekusi setiap
baris dari program secara keseluruhan. Keuntungan dari interpreter adalah dalam eksekusi
yang bisa dilakukan dengan segera. Tanpa melalui tahap kompilasi, untuk alas an ini
interpreter digunakan pada saat pembuatan program berskala besar.

Perbedaan Compiler dan interpreter.


Compiler Interpreter
Menterjemahkan secara keseluruhan Menterjemahkan Instruksi per instruksi
Bila terjadi kesalahan kompilasi maka Bila terjadi kesalahan interprestasi dapat
source program harus diperbaiki dan Diperbaiki

21
dikompilasi ulang

Dihasilkan Object program Tidak dihasilkan obyek program


Dihasilkan Executable program Tidak dihasilkan Executable program
Proses pekerjaan program lebih cepat Proses pekerjaan program lebih lambat
Source program tidak dipergunakan Source program terus dipergunakan
hanya bila untuk perbaikan saja
Keamanan dari program lebih terjamin Keamanan dari program kurang terjamin

Jenis-Jenis Bahasa Pemrograman


 Bahasa Pemrograman Tingkat rendah (Bahasa mesin, Biner)
 Bahasa Pemrograman Tingkat tinggi
Contoh-contoh Bahasa Pemrograman yang ada :
1. Prosedural : Algol, Pascal, Fortran, Basic, Cobol, C
2. Fungsional : LOGO, APL, LISP
3. Deklaratif : Prolog
Object oriented murni: Smalltalk, Eifel, Java, PHP

2. Pengenalan IDE Dev C++


Penjelasan
IDE merupakan singkatan dari Integrated Development Environment, merupakan Lembar
kerja terpadu untuk pengembangan program. IDE dari Dev C++, dapat digunakan untuk :

 Menulis Naskah Program.


 Mengkompilasi Program ( Compile )
 Melakukan Pengujian Program ( Debugging )
 Mengaitkan Object dan Library ke Program ( Linking )
 Menjalankan Program ( Running )

22
Tampilan IDE Dev C++

Gambar 1.2. IDE Dev C++ 4.9.9.2

IDE pada Dev C++, terbagi menjadi 4 (empat) bagian, yaitu :


a. Menu Utama ( Menubar )
Menu utama terdiri dari ; File, Edit, Search, View,
Project,Execute,Debug,Tools,CVS,Windows dan Help
b. Jendela Text Edit
Tempat untuk mengetikan program dan membuat program. Jika pertama kali anda
membuat program, nama file jendela editor adalah Untitled1
c. Jendela Message
Tempat untuk menampilkan pesan-pesan pada proses kompilasi dan link program.
d. Baris Status
Baris dimana menampilkan keterangan-keterangan pada saat anda mengaktifkan menu bar
dan sub menu.

3. Membuat File Editor


Penjelasan
File Editor merupakan File Program yang dapat dikompile, dan dijalankan untuk
menampilkan hasilnya serta mempunyai ekstensi .CPP. Cara mengaktifkannya : Klik Menu
File Gambar 1.3 Klik New, Source File
23
Gambar 1.3 Membuat File baru

Gambar 1.4 Menulis kode program

4. Menyimpan File Editor


Penjelasan
Setelah selesai mengetikan naskah program yang baru pada jendela Text Edit, maka
selanjutnya disimpan dengan cara :
a. Kik Menu File Save
b. Menekan Ctrl + S.
Selanjutnya tampil jendela Save File As, seperti dibawah ini :

24
Gambar 1.5 menyimpan file

5. Menterjemahkan Program
Penjelasan
Proses Compile merupakan suatu proses menterjemahkan program dari bahasa manusia
kedalam bahasa yang dimengerti oleh komputer yaitu bahasa mesin. Caranya adalah :
a. Kik Menu Project Compile
b. Menekan HotKey Ctrl + F9
Selanjutnya tampil kotak dialog Compile, seperti dibawah ini :

Gambar 1.6 Menterjemahkan/compile program

25
6. Menjalankan Program
Penjelasan
Proses Run merupakan suatu proses menterjemahkan program, melakukan proses linking,
membuat file eksekusi ( .exe ) dan sekaligus menjalankan program. Caranya adalah :
a. Kik Menu Debug Run
b. Menekan HotKey Ctrl + F10
Selanjutnya tampil kotak dialog Run, seperti dibawah ini :

Gambar 1.7 Menjalankan program


Catatan
Jika program yang dijalankan tidak muncul, untuk melihat hasil compile dapat dijalankan di
command prompt

26
KEGIATAN BELAJAR 3
PERANCANGAN C++

A. Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 3 ini siswa diharapkan dapat :
5) Memahami Struktur Program C++
6) Memahami Header pada c++
7) Memahami Punctuator pada c++
8) Memahami Komentar pada c++

B. Uraian Materi
Struktur Program C/C++
Penjelasan
Struktur program C++, sama seperti struktur program C yang terdahulu. Struktur program
C++ terdiri sejumlah blok fungsi, setiap fungsi terdiri dari satu atau beberapa pernyataan
yang melaksanakan tugas tertentu.

#include <file-include>
main()
{
pernyataan;
}

Contoh-1
#include <stdio.h>
#include <conio.h>
int main()
{
printf("Bahasa C\n");
}

Output yang akan dihasilkan, dari program 1 diatas adalah :


Bahasa C

27
Header pada c++
Header pada c++ merupakan bagian dari kode program yang berisi deklarasi untuk berbagai
modul yang dibutuhkan oleh program baik sebagai standari input atau output maupun sebagai
syntax. Fungsi dari header dalam bahasa pemrograman c++ adalah untuk memanggil library-
library yang ada sehingga suatu fungsi dapat digunakan secara baik dan benar. Pernyataan yang
digunakan untuk header adalah #include yang digunakan untuk mendeklarasikan file header
dalam c++. Terdapat beberapa macam file header dalam bahasa pemrograman c++, diantaranya
sebagai berikut :
a. File header stdio.h
File header stdio.h adalah singkatan dari standar input output header yang digunakan
sebagai standar input output operasi yang digunakan oleh bahasa c, tetapi juga digunakan
dalam bahasa c++. Fungsi-fungsi yang ada didalam stdio.h antara lain printf (), puts (),
putchar (), scanf () dan gets ().
b. File header conio.h
File conio.h merupakan file header yang berfungsi untuk menampilkan hasil tampilan
output kepada pengguna. Fungsi – fungsi yang ada didalam conio.h antara lain getch (),
getche (), clrscr ().
c. File header iostream
Kepanjangan dari input output stream. Fungsi header adalah untuk menggunakan fungsi
input dan output stream. Fungsi – fungsi yang ada didalamnya cin (), cout (), endl (), ends ()
d. File header math.h
Math.h merupakan file header yang berfungsi untuk operasi matematika. Fungsi-fungsi
yang ada di math.h antara lain sqrt (), pow (), sin (), cos (), tan ().
Punctuator pada c++
Punctuator merupakan symbol atau tanda yang terdapat pada bahasa pemrograman. Punctuator
sering disebut dengan separator. Berikut beberapa punctuator pada bahasa pemrograman :
a. Parantheses (symbol () )
Symbol ini digunakan untuk melakukan pengelompokkan pada ekspresi yang ada di kode
program. Fungsi lain dari symbol ini adalah untuk mengindikasikan pendeklarasian maupun
pemanggilan sebuah fungsi baik yang menggunakan parameter maupun tidak. Perhatikan
penggunaannya :
a = (b – c)*d;

28
b. Braces (symbol {})
Symbol ini digunakan untuk memulai dan mengakhiri sebuah kelompok pernyataan pada
kode program. Perhatikan contoh berikut :
int main (){
cout <<”saya sedang belajar c++”;
return 0;
}
c. Semicolon (symbol ;)
Symbol ini digunakan untuk mengakhiri sebuah pernyataan. Sebagai contoh berikut :
int a = 10;
return 0;
d. Equal sign (symbol =)
Symbol ini digunakan untuk memberikan nilai terhadap sebuah variabel, seperti contoh
berikut :
int a = 6; // memberikan nilai 6 pada variabel a
e. Comma (symbol ,)
Symbol ini digunakan untuk memisahkan apabila terdapat beberapa variabel maupun
parameter yang ditulis secara bersamaan. Perhatikan contoh berikut :
int a, b, c;
f. Bracket (symbol [ ])
Symbol ini digunakan untuk mengindikasikan sebuah array satu atau multidimensi.
Perhatikan contoh berikut :
int matriks [1][2]; //deklarasi matriks ordo 1x2

Komentar pad c++


Komentar program hanya diperlukan untuk memudahkan pembacaan dan pemahaman suatu
program (untuk keperluan dokumentasi program). Dengan kata lain, komentar program hanya
merupakan keterangan atau penjelasan program. Untuk memberikan komentar atau
penjelasan dalam bahasa C digunakan pembatas /* dan */ atau menggunakan tanda // untuk
komentar yang hanya terdiri dari satu baris. Komentar program tidak akan ikut diproses dalam
program (akan diabaikan).

29
KEGIATAN BELAJAR 4
TIPE DATA, VARIABEL, OPERATOR, EKSPRESI

B. Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 4 ini siswa diharapkan dapat :
1) Memahami Tipe Data pada c++
2) Memahami Variabel pada c++
3) Memahami Operator pada c++
4) Memahami Ekspresi pada c++

C. Uraian Materi
Tipe Data, Variabel Konstanta, Operator, dan Ekspresi
Variabel, konstanta dan tipe data merupakan tiga hal yang akan selalu kita jumpai ketika kita
membuat program. Bahasa pemrograman apapun dari yang paling sederhana sampai yang
paling kompleks, mengharuskan kita untuk mengerti ketiga hal tersebut.

1. Tipe Data
Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan
dalam pemrograman komputer.
Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya kita tentukan
dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel atau konstanta akan
sangat menentukan pemakaian sumberdaya komputer (terutama memori komputer). Salah
satu tugas penting seorang programmer adalah memilih tipe data yang sesuai untuk
menghasilkan program yang efisien dan berkinerja tinggi.
Ada banyak tipe data yang tersedia tergantung jenis bahasa pemrograman yang dipakai.
Namun secara umum dapat dikelompokkan seperti pada Gambar dibawah ini

30
Ada 2 jenis tipe data :
1. Tipe data primitive adalah tipe data dasar yang tersedia secara langsung pada suatu
bahasa pemrograman.
2. Tipe data composite adalah tipe data bentukan yang terdiri dari dua atau lebih tipe data
primitive.

 Tipe data numeric


Tipe data numeric digunakan pada variabel atau konstanta untuk menyimpan nilai dalam
bentuk bilangan atau angka. Semua bahasa pemrograman menyediakan tipe data numeric,
hanya berbeda dalam jenis numeric yang diakomodasi.

Jenis yang termasuk dalam tipe data numeric antara lain :


1. integer (bilangan bulat)
2. float (bilangan pecahan).
3. tipe data Single adalah tipe data untuk bilangan pecahan dengan presisi yang terbatas
4. Tipe data Double adalah tipe data untuk bilangan pecahan dengan presisi yang lebih
akurat.

Penentuan tipe data numeric untuk suatu variabel/konstanta harus sangat berhati-hati.

31
Manual dan petunjuk pada masing-masing bahasa pemrograman pada bagian tipe data
harus diperhatikan dengan seksama.
Tipe data Ukuran memori Jangkuan nilai Jumlah Digit
Char 1 Byte -128 s.d 127
Int 2 Byte -32768 s.d 32767
Short 2 Byte -2,147,435,648 s.d 2,147,435,647
Long 4 Byte -2,147,435,648 s.d 2,147,435,647
Float 4 Byte 3.4 x 10-38 s.d 3.4 x 10+38 5–7
Double 8 Byte 1.7 x 10-308 s.d 1.7 x 10+308 15 – 16
Long Double 10 Byte 3.4 x 10-4932 s.d 1.1 x 10+4932 19
Tipe Data Tambahan, yang dimiliki oleh Bahasa C/C++, adalah :
Unsigned digunakan bila data yang digunakan hanya data yang positif saja
Tipe Data Tambahan
Tipe Data Jumlah Memori Jangkauan Nilai
Unsigned Integer 2 Byte 0 – 65535
Unsigned Character 1 Byte 0 – 255
Unsigned Long Integer 4 Byte 0 – 4,294,967,295

Contoh program bahasa C


//Contoh program tipe data
//Nama Programmer : ..........
#include "stdio.h"
#include "conio.h"
int main()
{
int x;
float y;
char z;

32
double w;

x = 10;
y = 9.45;
z = 'C';
w = 3.45E+20;
printf("Nilai dari x adalah : %i\n", x);
printf("Nilai dari y adalah : %f\n", y);
printf("Nilai dari z adalah : %c\n", z);
printf("Nilai dari w adalah : %lf\n", w);
getch();
}

Dalam bahasa C terdapat lima tipe data dasar, yaitu :


1. char format penulisan : %c
2. int format penulisan : %i, %d
3. float format penulisan : %f
4. double format penulisan : %lf
5. void tidak bertipe

2. Variabel
Variabel adalah tempat dimana kita dapat mengisi atau mengosongkan nilainya dan
memanggil kembali apabila dibutuhkan. Setiap variabel akan mempunyai nama (identifier)
dan nilai.
Contoh Nama variabel dan nilai.
username = “joni”
Nama = “Udin”
Harga = 2500
HargaTotal = 34000

Pada sebagian besar bahasa pemrograman, variabel harus dideklarasikan lebih dulu untuk
mempermudah compiler bekerja. Apabila variabel tidak dideklarasikan maka setiap kali
compiler bertemu dengan variabel baru Pemberian nama variabel harus mengikuti aturan

33
yang ditetapkan oleh bahasa pemrograman yang kita gunakan. Namun secara umum ada
aturan yang berlaku untuk hampir semua bahasa pemrograman. Aturan-aturan tersebut
yaitu :
 Nama variabel harus diawali dengan huruf.
 Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan
karakter underscore (_).
 Nama variabel tidak boleh mengandung karakter-karakter khusus,seperti : .,+, -, *, /, <, >,
&, (, ) dan lain-lain.
 Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa pemrograman

Contoh penamaan variabel


Penamaan yang benar Penamaan yang salah
namasiswa nama siswa (salah karena menggunakan spasi)
XY12 12X (salah karena dimulai dengan angka)
harga_total harga.total (salah karena menggunakan karakter)

34
JenisMotor Jenis Motor (salah karena menggunakan spasi)
alamatRumah for (salah karena menggunakan kata kunci bahasa
pemrograman)

Jenis-jenis Variabel
1) Variabel Numerik
Variabel numerik ini dibagi menjadi menjadi 3 (tiga) macam :
 Bilangan Bulat
 Bilangan Desimal Berpresisi Tunggal atau Floating Point.
 Bilangan Desimal Berpresisi Ganda atau Double Precision.
2) Variabel Text
 Character ( Karakter Tunggal )
 String ( Untuk Rangkaian Karakter )

Deklarasi Variabel
Penjelasan
Adalah proses memperkenalkan variabel kepada bahasa C/C++ dan pendeklarasian tersebut
bersifat mutlak karena jika tidak diperkenalkan terlebih dulu maka bahasa C/C++ tidak
menerima variabel tersebut. Deklarasi Variabel ini meliputi tipe variabel, seperti : integer
atau character dan nama variabel itu sendiri. Setiap kali pendeklarasian variabel harus
diakhiri oleh tanda titik koma ( ; ).
Bentuk penulisannya:
Tipe data nama variabel;
Contoh Deklarasi
char nama_siswa;
char grade;
float rata_rata ;
int nilai;

35
3. Konstanta
Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi
konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilai
datanya sepanjang program berjalan tidak berubahubah, maka sebuah varibel lebih baik
diperlakukan sebagai konstanta.

Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan
nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat pada kode program, kita
dapat membuat pi sebagai konstanta. Penggunaan konstanta pi akan lebih memudahkan
penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang-ulang.
Penggunaan tipe data numeric.
Kode Program A Hasil eksekusi Program A
#include “stdio.h” X =12
Y =2.15
int main() { Z =25
int x, z;
float y;
x = 12;
y = 2.15;
z = x * y;
cout << "X =" << x << endl;
cout << "Y =" << y << endl;
cout << "Z =" << z << endl;
return 0; }

Kode Program B Hasil eksekusi Program B


#include <iostream> X =12
using namespace std; Y =2.15
int main() { Z =25.8
int x;
float y, z;
x = 12.8;
y = 2.15;
36
z = x * y;
cout << "X =" << x << endl;
cout << "Y =" << y << endl;
cout << "Z =" << z << endl;
return 0; }

Kode Program C Hasil eksekusi Program C


#include <iostream> X =12
using namespace std; Y =2.15
int main() { Z =25.8
int x;
float y, z;
x = 12;
y = 2.15;
z = x * y;
cout << "X =" << x << endl;
cout << "Y =" << y << endl;
cout << "Z =" << z << endl;
return 0; }

Selain itu, bahasa C juga menyediakan beberapa karakter khusus yang disebut karakter
escape, antara lain :
 \a : untuk bunyi bell (alert)
 \b : mundur satu spasi (backspace)
 \f : ganti halaman (form feed)
 \n : ganti baris baru (new line)
 \r : ke kolom pertama, baris yang sama (carriage return)
 \v : tabulasi vertical
 \0 : nilai kosong (null)
 \’ : karakter petik tunggal
 \” : karakter petik ganda

37
 \\ : karakter garis miring

 Character
Bersama dengan tipe data numeric, character merupakan tipe data yang paling banyak
digunakan. Tipe data character kadang disebut sebagai char atau string. Tipe data string
hanya dapat digunakan menyimpan teks atau apapun sepanjang berada dalam tanda petik
dua (“…”) atau petik tunggal (‘…’). Perhatikan contoh berikut.

Contoh Deklarasi tipe data

 Boolean
Tipe data Boolean digunakan untuk menyimpan nilai True/False (Benar/Salah). Pada
sebagian besar bahasa pemrograman nilai selain 0 menunjukkan True dan 0 melambangkan
False. Tipe data ini banyak digunakan untuk pengambilan keputusan pada struktur
percabangan dengan IF … THEN atau IF … THEN … ELSE.

Contoh :
Program Pascal
If Nilai >= 60 Then
writeln(‘Lulus Ujian’);
Else
End if Writeln(‘Tidak lulus’);

38
 Array
Array atau sering disebut sebagai larik adalah tipe data yang sudah terstruktur dengan baik,
meskipun masih sederhana. Array mampu menyimpan sejumlah data dengan tipe yang
sama (homogen) dalam sebuah variabel. Setiap lokasi data array diberi nomor indeks yang
berfungsi sebagai alamat dari data tersebut.

Contoh:
Penggunaan Array
Var
X: array[1..100] of integer;
Cara mengisi data pada elemen larik dalam pemrograman adalah seperti
contoh berikut :
X[1]:= 4;
X[2]:= 3;
X[3]:= 2;
X[4]:= 1;

 Record atau Struct


Seperti halnya Array, Record atau Struct adalah termasuk tipe data komposit. Record
dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal dalam bahasa C++. Berbeda
dengan array, tipe data record mampu menampung banyak data dengan tipe data berbeda-
beda (heterogen).

Sebagai ilustrasi array mampu menampung banyak data namun dengan satu tipe data yang
sama, misalnya integer saja. Sedangkan dalam record, kita bisa menggunakan untuk
menampung banyak data dengan tipe data yang berbeda, satu bagian integer, satu bagian
lagi character, dan bagian lainnya Boolean. Biasanya record digunakan untuk menampung
data suatu obyek. Misalnya, siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal
lahir. Nama akan akan menggunakan tipe data string, alamat bertipe data string, usia
bertipe data single (numeric), tempat lahir bertipe data string dan tanggal lahir bertipe data
date.

39
 Image
Image atau gambar atau citra merupakan tipe data grafik

 Date Time
Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan dalam format
yang spesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat
digunakan untuk menyimpan baik tanggal maupun jam. Tipe data ini masuk dalam
kelompok tipe data composite karena merupakan bentukan dari beberapa tipe data.
Berikut ini contoh tipe data dalam Visual Basic.
Dim WaktuLahir As Date
WaktuLahir = “01/01/1997”
WaktuLahir = “13:03:05 AM”
WaktuLahir = “02/23/1998 13:13:40 AM”
WaktuLahir = #02/23/1998 13:13:40 AM#
 Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan nilai tertentu
sesuai dengan yang ditetapkan programmer. Biasanya tipe data ini mempunyai nilai batas
minimum dan nilai batas maksimum. Tipe data ini didukung dengan sangat baik dalam
Delphi.
Berikut ini contoh deklarasi tipe data subrange dalam Delphi.
Type
BatasIndeks = 1..20
RentangTahun = 1950..2030
Var
Indeks : BatasIndeks
Tahun : RentangTahun

40
 Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus disebut satu
persatu dan bernilai konstanta integer sesuai dengan urutannya. Nilai konstanta integer
elemen ini diwakili oleh suatu nama variable yang ditulis di dalam kurung. Tipe data ini juga
dijumpai pada Delphi dan bahasa pemrograman deklaratif seperti SQL.
Berikut ini contoh deklarasi tipe data enumerasi dalam Delphi.
Type
Hari_dlm_Minggu = (Nol, Senin, Selasa, Rabu,Kamis, Jumat, Sabtu,Minggu)
Nama_Bulan = (Nol, Januari, Pebruari, Maret,April, Mei, Juni, Juli,Agustus,
September, Oktober, Nopember, Desember)
Var
No_Hari : Hari_dlm_Minggu
No_Bulan : Nama_Bulan

41
 Object
Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-obyek
yang disediakan oleh Visual Basic, Delphi dan dan bahasa pemrograman lain yang berbasis
GUI. Sebagai contoh, apabila kita mempunyai form yang memiliki control Command button
yang kita beri nama Command1, kita dapat mendeklarasikan variabel sebagai berikut :

Contoh Penggunaan tipe data object.


Dim A As CommandButton
Set A = Command1
A.Caption = “HEY!!!”
A.FontBold = True

4. Operator
Operator merupakan simbol atau karakter yang biasa dilibatkan dalam program untuk
melakukan sesuatu operasi atau manipulasi, seperti penjumlahan, pengurangan dan lain
lain.

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

42
Operator Aritmatika
Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah :
Tabel Operator Aritmatika
Operator Keterangan Contoh
* Perkalian 4*5
/ Pembagian 8/2
% Sisa Pembagian 5%2
+ Penjumlahan 7+2
- Pengurangan 6-2

Tabel Operator Unary


Operator Keterangan Contoh
+ Tanda Plus -5
/ Tanda Minus +6

//Contoh penggunaan Operator Aritmatika


//Nama programmer :.......
#include "stdio.h"
#include "conio.h"
int main()
{
printf("Nilai dari 9 + 4 = %i\n", 9 + 4);
printf("Nilai dari 9 - 4 = %i\n", 9 - 4);
printf("Nilai dari 9 * 4 = %i\n", 9 * 4);
printf("Nilai dari 9 / 4 = %i\n", 9 / 4);
printf("Nilai dari 9 % 4 = %i\n", 9 % 4);
getch();
}

/* Penggunaan operator untuk


mencetak deret bilangan genap

43
antara 1 – 100 */
//Nama programmer :.......
#include "conio.h"
#include "stdio.h"
int main()
{
int bil;
for (bil=1; bil<100; bil++)
{
if(bil%2==0)
printf("%5.0i", bil);
}
getch();
}

Operator Penambah dan Pengurang


Masih berkaitan dengan operator pemberi nilai, Bahasa C menyediakan operator penambah
dan pengurang. Dari contoh penulisan operator pemberi nilai sebagai penyederhanaannya
dapat digunakan operator penambah dan pengurang.

Tabel Operator Penambah dan Pengurang


Operator Keterangan

++ Penambahan
-- Pengurangan

A = A + 1 atau A = A - 1; disederhanakan menjadi :


A += 1 atau A -= 1; masih dapat disederhanakan menjadi A ++ atau A--
Notasi “ ++ “ atau “ -- “ dapat diletakan didepan atau di belakang variabel

Contoh : A ++ atau ++A / A-- atau –A


Kedua bentuk penulisan notasi ini mempunyai arti yang berbeda.
 Jika diletakan didepan variabel, maka proses penambahan atau pengurangan akan dilakukan
sesaat sebelum atau langsung pada saat menjumpai ekspresi ini, sehingga nilai variabel tadi
akan langsung berubah begitu ekspresi ini ditemukan, sedangkan

44
 Jika diletakan dibelakang variabel, maka proses penambahan atau pengurangan akan
dilakukan setelah ekspresi ini dijumpai atau nilai variabel akan tetap pada saat ekspresi ini
ditemukan.

/* Penggunaan Notasi Didepan Variabel*/


// nama programmer :.....
#include <stdio.h>
#include <conio.h>
int main()
{
int a = 10, b = 5;

printf("Nilai A = %d", a);


printf("\nNilai ++A = %d", ++a);
printf("\nNilai A = %d", a);
printf("\nNilai B = %d", b);
printf("\nNilai --B = %d", --b);
printf("\nNilai B = %d", b);
getch();
}

Output :
Nilai A = 10
Nilai ++A = 11
Nilai A = 11
Nilai B =5
Nilai –B =4
Nilai B =4

/* Perbedaan operator peningkatan ++


yang diletakkan di depan dan dibelakang
operand */
//Nama programmer :......

45
#include <stdio.h>
#include <conio.h>
int main()
{
int x, nilai;
x = 5;
nilai = ++x; /* berarti x = x + 1; nilai = x; */
printf("nilai = %d, x = %d\n", nilai, x);
nilai = x++; /* berarti nilai = x; nilai = x + 1; */
printf("nilai = %d, x = %d\n", nilai, x);
getch();
}

Outputnya : nilai = 6, x = 6
nilai = 6, x = 7

/*Contoh ke-2 operator peningkatan


unary */
//Programmer :……
#include "stdio.h"
#include "conio.h"
int main()
{
int b, nilai;
b = 15;
nilai = --b; /* berarti b = b - 1; nilai = b; */
printf("nilai = %d, b = %d\n", nilai, b);
nilai = b--; /* berarti nilai = b; b = b + 1; */
printf("nilai = %d, b = %d\n", nilai, b);
getch();
}
Ouputnya : nilai = 14, b= 14
nilai = 14, b=13
46
Ekspresi Pada C++

Ekspresi adalah pernyataan yang digunakan untuk mengolah suatu data menjadi
output yang dilakukan melalui suatu perhitungan yang dilakukan oleh operator.
Ekspresi terdiri dari operand dan operator
Terdapat beberapa ekspresi yang dapat digunakan pada c++ berdasarkan jenis
operator yang digunakan.
1. Ekspresi Aritmatika
Pada ekspresi ini menggunakan operator aritmatikan sebagai pengolah datanya.
Tipe data operand yang dapat digunakan adalah yang bertipe data bilangan
bulat atau decimal. Beriku adalah contoh ekspresi aritmatika :
10 – 4 = 6 15.5 + 1.5 = 17
2. Ekspresi Perbandingan
Untuk menggunakan ekspresi ini maka operator yang digunakan haruslah
operator pembanding. Contoh ekspresi perbandingan :
3 > 1 hasil benar 6 < 4 hasil salah
3. Ekspresi logika
Ekspresi ini digunakan operator logika sebagai operatornya. Hasil yang dimiliki
hanyalah 1 dan 0 seperti halnya ekspresi perbandingan. Berikut adala contoh
yang menggunakan operator && yang apabila kedua operand bernilai 1 atau
true maka hasilnya akan 1. Tetapi apabila salah satu saja operand bernilai 0 atau
false maka hasil yang dimiliki adalah 0.
0 && 0 = 0 1||0=1 !0 = 1

LATIHAN
1. Sebutkan tipe data yang kamu ketahui ?
2. Buatlah algoritma menggunakan tipe data char/string ?
3. Buatkan program C untuk mencari bilangan ganjil ?

47
KEGIATAN BELAJAR 5
Penerapan Operator Pada C++

A. Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 5 ini siswa diharapkan dapat :
3) Menerapkan operasi aritmatika pada c++

4) Menerapkan operasi logika pada c++

B. Uraian Materi

A. Operasi Aritmatika pada C++


Operasi aritmatika adalah operasi yang melibatkan operator aritmatika dalam pengoperasiannya. Operasi
aritmatika terdiri dari :
1. Operasi Pengurangan
Operasi pengurangan digunakan untuk mengurangi dua buah bilangan atau lebih. Berikut contoh
penerapannya pada c++
#include<iostream>
using namespace std;
int main () {
int a = 60, b = 5, c = 13;
int d;
d = a - b – c;
cout<<”Hasil pengurangan a - b - c adalah = “<<d;
return 0;
}
Berdasarkan kode program diatas, terdapat tiga buah variabel dan akan diproses menggunakan operator
aritmatika pengurangan (-). Hasil tampilan yang dimiliki sebagai berikut :

2. Operasi Penjumlahan
Operasi penjumlahan digunakan untuk menjumlahkan dua buah bilangan atau lebih. Berikut contoh

48
penerapannya pada c++
#include<iostream>
using namespace std;
int main () {
int a = 25, b = 5;
int c;
c = a + b;
cout<<”Hasil penjumlahan a + b adalah = “<<c;
return 0;
}
Berdasarkan kode program diatas, terdapat dua buah variabel dan akan diproses menggunakan operator
aritmatika penjumlahan (+). Hasil tampilan yang dimiliki sebagai berikut :

3. Operasi Perkalian
Operasi perkalian digunakan untuk mengalikan dua buah bilangan atau lebih. Berikut contoh penerapannya
pada c++
#include<iostream>
using namespace std;
int main () {
int bil1 = 25, bil2 = 4;
int bil3;
bil3 = bil1 * bil2;
cout<<”Hasil perkalian bil1 * bil2 adalah = “<<bil3;
return 0;
}
Berdasarkan kode program diatas, terdapat dua buah variabel dan akan diproses menggunakan operator
aritmatika perkalian (*). Hasil tampilan yang dimiliki sebagai berikut:

49
4. Operasi Pembagian
Perhatikan kode program dibawah ini !
#include<iostream>
using namespace std;
int main () {
int a1 = 240, a2 = 4;
int a3;
a3 = a1 / a2;
cout<<”Hasil pembagian a1 / a2 adalah = “<<a3;
return 0;
}
Berdasarkan kode program diatas, terdapat dua buah variabel dan akan diproses menggunakan operator
aritmatika pembagian (/). Hasil tampilan yang dimiliki sebagai berikut:

5. Operasi Modulus
Operasi modulus merupakan operasi yang digunakan untuk menghitung sisa bagi. Berikut contohnya
sebagai berikut :
#include<iostream>
using namespace std;
int main () {
int bil1 = 32, bil2 = 5;
int bil3;
bil3 = bil1 % bil2;
cout<<”Hasil sisa bagi bil1 dengan bil2 adalah = “<<bil3;
return 0;
}
Berdasarkan kode program diatas, terdapat dua buah variabel dan akan diproses menggunakan operator
aritmatika modulus (%). Hasil tampilan yang dimiliki sebagai berikut:

50
B. Operasi Logika Pada C++
Operasi logika adalah operasi yang melibatkan operator logika dalam pengoperasiannya. Operasi logika
terdiri dari :
1. Operasi logika OR
Operasi logika OR, akan menghasilkan nilai akhir 1 apabila salah satu saja dari operand . nya bernilai 1
apalagi kedua operandnya bernilai 1. Perhatikan contoh kode program dibawah ini !
#include<iostream>
using namespace std;
int main ( ) {
cout<<”1 || 1 = “<< (1||1)<<endl;
cout<<”1 || 0 = “<< (1||0)<<endl;
cout<<”0 || 1 = “<< (0||1)<<endl;
cout<<”0 || 0 = “<< (0||0)<<endl;
return 0;
}

2. Operasi logika AND


Operasi logika AND, akan menghasilkan nilai akhir 1 apabila kedua operand nya bernilai 1 selain itu
akan menghasilkan nilai 0. Perhatikan contoh kode program dibawah ini !
#include<iostream>
using namespace std;
int main ( ) {
cout<<”1 && 1 = “<< (1&&1)<<endl;
cout<<”1 && 0 = “<< (1&&0)<<endl;
cout<<”0 && 1 = “<< (0&&1)<<endl;
cout<<”0 && 0 = “<< (0&&0)<<endl;
return 0;
}
51
3. Operasi logika NOT
Operasi NOT berbeda dengan AND dan OR. Operasi logika ini akan membalikkan nilai operand awal.
Apabila nilai operand 1 kemudian melalui operasi ini, maka hasilnya adalah kebalikannya yaitu 0.
Perhatikanlah contoh berikut ini !
#include<iostream>
using namespace std;
int main(){
cout<<”!1 = “<<!1<<endl;
cout<<”!0 = “<<!0<<endl;
return 0;
}
Hasil tampilan yang dimiliki kode program diatas sebagai berikut !

52
KEGIATAN BELAJAR 6
Struktur Kontrol Percabangan

B. Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 6 ini siswa diharapkan dapat :
1) Memahami Percabangan 1 kondisi
2) Memahami Percabangan 2 kondisi
3) Memahami Percabangan lebih dari 2 kondisi
4) Memahami Percabangan bersarang

C. Uraian Materi
Penyeleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses. Penyeleksian
kondisi dapat diibaratkan sebagai katup atau kran yang mengatur jalannya air. Bila katup
terbuka maka air akan mengalir dan sebaliknya bila katup tertutup air tidak akan mengalir
atau akan mengalir melalui tempat lain. Fungsi penyeleksian kondisi penting artinya dalam
penyusunan bahasa C, terutama untuk program yang kompleks.
1) Percabangan 1 kondisi (Tunggal) atau Struktur Kondisi IF….
Struktur if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu kondisi
tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka pernyataan yang ada
di dalam blok if akan diproses dan dikerjakan.
Bentuk umum:
if(kondisi)
pernyataan;

Contoh Program 1 :
/* Program struktur kondisi if tunggal untuk memeriksa suatu kondisi */
//Nama programmer :........
#include "stdio.h"
#include "conio.h"
int main()
{
float nilai;
53
printf("Masukan nilai yang didapat :");
scanf("%f", &nilai);
if(nilai > 65)
printf("\n ANDA LULUS !!!!\n");
getch();
}

INFO
Bila program tersebut dijalankan dan kita memasukan nilai 80, maka perintah mencetak
perkataan LULUS !!!! akan dilaksanakan, namun sebaliknya bila kita memasukan sebuah nilai
yang kurang dari 65 maka program akan berhenti dan tidak dihasilkan apa-apa.
Contoh Program 2 :
/* Program contoh penerapan struktur kondisi if tunggal*/
//Nama programmer :........
#include "stdio.h"
#include "conio.h"
int main()
{
int a,b,c,max;
printf("Masukan bil 1 : ");fflush(stdin); scanf("%i",&a);
printf("Masukan bil 2 : ");fflush(stdin); scanf("%i",&b);
printf("Masukan bil 3 : ");fflush(stdin); scanf("%i",&c);
if((a>b)&&(a>c))
max=a;
if((b>a)&&(b>c))
max=b;
if((c>a)&&(c>b))
max=c;
printf("Bil terbesar : %i \n",max);
if(max>0)
printf("Bil tsb adalah bil positif \n");
if(max<0)
printf("Bil tsb adalah bil negatif \n");
54
getch();
}
1. Percabangan Ganda

Percabangan ganda apabila terdapat 2 alternatif instruksi yang dijalankan. Logika ini
memungkinkan kompiler menjalankan salah satu dari 2 alternatif instruksi yang ada, dan
salah satu instruksi pasti dijalankan.
Notasi algoritmik yang digunkanan :
If (kondisi) {
Instruksi pertama
}else{
Instruksi kedua
}
Contoh :
Program memeriksa inputan apakah bilangan ganjil atau genap. Apabila diperiksa
bilangan genap maka tulis “Bilangan genap” dan kalau bukan maka tulis “Bilangan
ganjil”.
#include <stdio.h>
void main(){
int angka;
scanf(“%d”,&angka);
if (angka % 2 == 0)
printf (“Bilangan Genap”);
else
printf(“Bilangan Ganjil”);
}

2. Percabangan Lebih dari 2

Pada dasarnya hanya terdapat 2 jenis seleksi dalam struktur algoritma


pemrograman, namun bukan berarti hanya bisa dikembangkan pada 2 jenis tersebut saja.
Struktur seleksi dapat dikembangkan menjadi bentuk yang tidak terbatas dan dapat
dikombinasikan kedalam bentuk perulangan selama notasi penulisannya tidak terdapat
kesalahan.
Kemampuan logika seseorang dalam merancang program dan mengamati dari
permasalahan yang ada menjadi bagian yang paling penting dalam melakukan
pengembangan dari bentuk seleksi ini.
Dibawah ini akan diberikan contoh seleksi menggunakan kondisi lebih dari 2.

Contoh :
Program untuk menentukan grade dari sebuah nilai ujian, dengan aturan grade A untuk
rentang nilai 80 – 100, grade B untuk nilai 70 – 80 dan grade C untuk nilai 50 – 70 dan

55
grade D untuk nilai dibawah itu.
#include <stdio.h>
void main(){
int nilai;
scanf(“%d”,&nilai);
if (nilai >= 80 && nilai <= 100)
print(“Grade A”);
else if (nilai >= 70 && nilai <= 80)
printf(“Grade B”);
else if (nilai >= 50 && nilai <= 70)
printf(“Grade C”);
else
printf(“Grade D”);
}

3. Percabangan Bersarang Struktur Case

Struktur case sebenarnya memiliki fungsi yang sama dengan struktur if yang telah kita
pelajari diatas. Struktur case ini dapat meringkaskan alur logika yang terjadi apabila
diaplikasikan pada pada alur seleksi yang memiliki lebih dari 2 kondisi. Berikut adalah
notasi algoritmanya :

switch (kondisi){
case kondisi_1 :
break;
case kondisi2 :
break;
default : }

Struktur logika seleksi menggunakan struktur case ini jauh lebih ringkas apabila
diaplikasikan pada struktur seleksi yang memiliki kondisi lebih dari 2. Kompiler program
akan menjalankan instruksi dari struktur case dan memeriksa setiap kondisi yang ada,
apabila belum ada kondisi yang bernilai benar maka kompiler akan terus menjalankan
instruksi dibawahnya sampai ditemukan kondisi yang bernilai benar. Namun apabila
hingga kondisi terakhir diperiksa dan tidak ditemukan kondisi yang bernilai benar maka
kondisi default yang akan dijalankan.

Contoh :
Program untuk menentukan apakah karakter „%‟, spasi, „&‟ atau „$‟ yang ditekan oleh
pengguna melalui keyboard.
56
#include <stdio.h>

void main(){
int tombol;
scanf(“%d”,&tombol);

swicth(tombol){
case „32‟:
printf(“Anda menekan tombol spasi”);
break;
case ‟36: printf(“Anda menekan tombol $”);
break;
case „37‟ : printf(“Anda menekan tombol %”);
break;
case „38‟: printf(“Anda menekan tombol &”);
break;
default : printf(“Anda tidak mematahui aturan.”);
}}

Perbedaan yang paling jelas antara stukrut if dengan struktur case adalah :
 Struktur if dapat menerima kondisi yang berupa operasi logika. Sedangkan stuktur case
tidak.
 Struktur case lebih efektif apabila digunakan untuk logika seleksi lebih dari 2 kondisi.
 Struktur case dan sktuktur if dapat dikombinasikan kedalam satu bagian, dengan
catatan tata cara penulisan notasi tidak terdapat kesalahan.
Struktur case tidak dapat melakukan pengecekan terhadap tipe data string / kalimat.

57
KEGIATAN BELAJAR 7
Struktur Perulangan

Tujuan Belajar :
Setelah mempelajari ini, siswa diharapkan mampu :
Menyimpulkan penerapan algoritma perulangan untuk menyelesaikan masalah
Menganalisa algoritma perulangan dengan Pelbagai macam data

Perulangan
Salah satu bagian yang paling membedakan antara manusia dengan komputer adalah :
Komputer mampu mengerjakan instruksi dalam hitungan ribuan bahkan jutaan kali tanpa
mengenal lelah. Dalam mempelajari algoritma pemrograman, struktur perulangan menjadi
bagian yang sangat penting untuk dipelajari.

Struktur Perulangan
Struktur perulangan terdiri dari 2 bagian, yaitu :
1. Kondisi perulangan, yaitu ekspresi yang dilakukan sebelum pengulangan dilakukan
pertama kali.
2. Body atau tubuh pengulangan, yaitu satu atau lebih instruksi yang diulang.

Selain itu biasanya di perulangan juga terdapat 2 hal dibawah ini, antara lain :
Inisialisasi : aksi yang dilakukan sebelum pengulangan dilakukan pertama kali.
Terminasi : aksi yang dilakukan untuk membuat perulangan berakhir. Biasanya berupa
sebuah kondisi.

Dalam setiap bahasa pemrograman pada umumnya biasanya terdapat 3 jenis perulangan,
antara lain :
1. Struktur WHILE – DO
2. Struktur Do – WHILE / REPEAT – UNTIL
3. Struktur FOR.

Ketiga jenis diatas hanyalah sebuah metode dan pada implementasinya, notasi penulisannya
(sintaks) sangat tergantung dari setiap bahasa pemrograman yang digunakan.
Struktur WHILE – DO

Ciri khas dari struktur ini adalah :


Dilakukan pengencekan di awal pada kondisi sebelum menjalankan instruksi di tubuh
perulangan.
Ada kemungkinan tubuh perulangan tidak dijalankan sama sekali.
58
Setiap kali hendak melakukan perulangan berikutnya, selalu memeriksa kondisi
perulangan. Apabila kondisi perulangan telah
memberikan nilai false / salah. Maka perulangan akan dihentikan.

Notasi algoritmiknya adalah :

while (KONDISI){
tubuh perulangan yang berisi instruksi untuk dijalankan.
}

Contoh :
Progam membuat tulisan di angka 1 .. 100.

# include <stdio.h>
void main(){
int nilai_awal = 1; // inisialisasi awal. Sangat penting.
While (nilai_awal <= 100){
Printf(“/n%d”,nilai_awal);
Nilai_awal ++; // memanipulasi variabel awal agar tercapai kondisiterminasi.
}}

Dalam struktur perulangan ini, ada 2 hal yang harus diperhatikan untuk menghindari terjadinya
kesalahan logika pada program.

Inisialisasi variabel awal.


Ini dimaksudkan agar ketika kompiler program melakukan pemeriksaan terhadap k ondisi awal,
ditemukan kondisi yang benar. Pada beberapa bahasa pemrograman tertentu, apabila sebuah
variabel tidak diinisialisasikan maka nilainya bisa berupa random ataupun nol. (lihat contoh
dibawah)

Manipulasi variabel awal.

Banyak terjadi kesalahan pada programmer ketika mereka membuat program perulangan,
memanipulasi variabel kondisi sangat penting untuk menjaga program tetap sesuai dengan
yang diinginkan. Ketika kita lupa memanipulasi variabel awal, ada kemungkinan program
mengulang terus menerus (looping forever) karena kondisi yang diinginkan tercapat terus
tanpa ada perubahan. (lihat contoh dbawah)

Contoh 1 :
Program menulis angka dari 1 .. 100.

# include <stdio.h>
59
void main(){
int nilai_awal ; // tidak dilakukan inisialisasi awal.
While (nilai_awal <= 100){
printf(“/n%d”,nilai_awal);
Nilai_awal ++; // memanipulasi variabel awal agar tercapai kondisiterminasi.
}}

Program diatas tidak melakukan inisialisasi awal terhadap variabel nilai_awal, sehingga ada
kemungkinan nilai_awal berisni nilai random. Misalkan nilai_awal berisi -1200, dan secara
logika -1200 memang kurang dari 100. Maka program bukan mencetak 1 – 100, melainkan
mencetak -1200 – 100.

Contoh 2 :
Program menulis angka dari 1 .. 100.
# include <stdio.h>
void main(){
int nilai_awal = 1; // inisialisasi awal dilakukan While
(nilai_awal <= 100){ Printf(“/n%d”,nilai_awal);
}}

Program diatas tidak melakukan manipulasi terhadap nilai_awal , sehingga nilainya selalu
1. Program bukannya mencetak 1 – 100, melainkan mencetak angka 1 terus menerus dan tidak
pernah berhenti karena kondisi perulangan selalu benar.

6.2.2 Struktur Do – WHILE / REPEAT – UNTIL

Struktur Do = WHILE / REPEAT – UNTIL hampir mirip dengan struktur WHILE – DO. Berikut
adalah ciri khas dari struktur perulangan ini.

Tidak dilakukan pengecekan kondisi perulangan di awal eksekusi program.


Minimal perulangan yang terjadi di tubuh program sebanyak 1 kali (Kerena tidak
ada pengecekan kondisi perulanga di awal).
Setiap kali hendak melakukan perulangan berikutnya, selalu memeriksa kondisi perulangan.
Apabila kondisi perulangan telah memberikan nilai false / salah. Maka perulangan akan
dihentikan.

Perbedaan paling mendasar sebenarnya terletak pada pengecekan kondisi perulangan, struktur
ini melakukan pengecekan kondisi perulangan di akhir tubuh perulangan (bukan di awal seperti
struktur WHILE – DO) sehingga mengakibatkan instruksi dijalankan minimal 1 kali.

60
Notasi algoritmiknya adalah :

do { repeat
Tubuh perulangan atau
}while (KONDISI); until KONDISI

Pada impelemntasinya notasi penulisan struktur perulangan ini juga bergantung pada bahasa
pemgoraman yang digunakan. Pembahasan ini menggunakan bahasa pemrograman Turbo C
dan leih ditekankan kepada konsep – konsep perulangannya.

Contoh :

Program menulis angka dari 1 .. 100.

# include <stdio.h>
void main(){
int nilai_awal = 1; // inisialisasi awal dilakukan do{
Printf(“/n%d”,nilai_awal);
Nilai_awal += 1;// tambahkan nilai_awal sebanyak 1.
}while(nilai_awal <= 100);
}

Program untuk meminta inputan dari keyboard, apabila pengguna menekan tombol esc maka
program akan berhenti.

#include <stdio.h>
#include <conio.h>
void main(){
char tombol;
do{
tombol = getch(); // peminta penekanan tombol dari keyboard.
// selama tombol yang ditekan tidak memiliki ASCII = 27 (tombol esc) maka
//program akan tetap berjalan.
}while (tombol != 27);
// program berhenti, karena pengguna telah menekan tombol escape.
}

Kapan menggunakan WHILE – DO atau Do – WHILE ?


Pemilihan antara kedua struktur ini sangat tergantung pada permasalahan yang dihadapi.
Apabila sebuah program memerlukan instruksi dijalankan dahulu dan baru diperiksa kondisinya
61
maka strukltur DO – WHILE harus digunakan namun apabila sebuha program harus
memeriksa kondisi perulangan terlebih dahulu dan baru menjalankan tubuh perulangan, maka
kondisi WHILE – DO harus digunakan.

6.2.3 Struktur FOR

Struktur perulangan for ini digunakan untuk perulangan yang tidak perlu memeriksa kondisi
apapun dan hanya melaksanakan perulangan sejumlah kali tertentu.

Struktur perulangan ini paling cocok untuk proses perulangan yang telah diketahui batas
akhirnya, karena kompiler akan mengeksekusi lebih cepat daripada 2 jenis struktur perulangan
diatas.
Notasi algoritmiknya :
For (variabel awal = nilai awal; kondisi ; faktor penaik){ Tubuh
perulangan
}

Contoh :
Program menulis bilangan genap dari 2 – 100.
#include <stdio.h>
void main(){
int nilai_genap = 2; // inisialisasi awal.
for (nilai_genap =2; nilai_genap <= 100; nilai_genap+=2) printf(“%d”,&nilai_genap);}
Program diatas akan melakukan inisialisasi nilai_genap sebanyak 2, dan setelah itu akan dilakukan
pemeriksaan apakan kondisi terpenuhi / memberikan nilai benar. Apabila kondisi terpenuhi
maka tubuh perulangna akan dijalankan ( mencetak nilai dari nilai_genap) dan kemudian
menaikkan nilai_genap sebanyak 2. Setlah itu akan dilakukan pemeriksaan kondisi sekali lagi,
dan apabila kondisi tersebut terpenuhi maka tubuh perulangan akan dijalankan lagi sedangkan
apabila kondisi perulangan tidak terpenuhi maka struktur perulangan akan berakhir.

Inti dari struktur perulangan ini adalah :

Lebih cocok untuk jenis perulangan yang memiliki batas akhir yang sudah jelas.
Pemeriksaan kondisi awal akan dilakukan di awal. Apabila kondisi terpenuhi, maka tubuh
perulangan akan dilakukan. Apabila tidak, maka tubuh perulangan tidak akan pernah
dilakukan.
Ada kemungkinan tubuh perulangan tidak dijalankan sama sekali.
Memiliki proses yang lebih cepat dibandingkan bentuk DO – WHILE atau WHLE – DO
dalam proses perhitungan matematika.

62
6.3 Algoritma pengulangan (While, While bersarang, Repeat)

STATEMEN/PERYATAAN WHILE
Pernyataan while digunakan untuk perulangan yang banyaknya perulangan tidak diketahui.
Peryataan while mirip dengan peryataan if yang melakukan pemeriksaan ekspresi boolean sebelum
sebuah atau serangkaian peryataan dilakukan.

Bentuk umum:
while kondisi do
Statemen

Kondisi adalah ekspresi boolean. Jika ekspresi bernilai true statemen dijalankan dan iperiksa
kembali, dan keluar dari perulangan jika bernilai false.

Contoh_While1:
Program deretangka_1; Hasil :
uses crt; 12345678910
var i:integer;
Begin
clrscr;
i:=1;
while i <= 10 do
begin
writeln(i);
i:=i+1;
end;
readln;
End.

63
Contoh_While2:
Program deretangka_2; Hasil :
uses crt; 10987654321
var i:integer;
Begin
clrscr;
i:=10;
while i > 0 do
begin
writeln(i);
i:=i-1;
end;
readln;
End.

Contoh_While3:
Program jumlahinteger;
uses crt;
var i,batas,hasil:integer;
Begin
clrscr;
write('Masukkan integer positif :');readln(batas);
hasil:=0;
i:=0;
while i < batas do
begin
i:=1+1;
hasil:=hasil+1;
end;

End.
64
w e('Jumlah 1 sampai ',batas,'=');
r write(hasil);
i readln;
t

While Bersarang
Contoh_While4:
Program bintang2;
uses crt;
var baris, kolom, jumbaris:integer;
Begin
clrscr;
write('Jumlah baris : );readln(jumbaris);
baris:=1;
while baris <= jumbaris do
begin
write('*' :jumbaris+1-baris);
begin kolom:=2;
end; while kolom <= (2*baris-1) do

write('*');
kolom:=kolom+1;
writeln; baris:=baris+1;end;
readln;
End.

LATIHAN
Soal-soal peryataan WHILE:
1. Buatlah program untuk menampilkan bilangan 1 sampai dengan 5 ?

2. Buatlah program untuk menampilkan bilangan 5 sampai dengan 1 ?

65
KEGIATAN BELAJAR 8

PERANCANGAN ARRAY PADA C++

A. Pengertian Array

Array adalah suatu variabel yang terdiri dari sekumpulan data dimana data-data tersebut mempunyai tipe
data yang sama. Setiap data disimpan dalam alamat memori yang berbeda-beda dan disebut dengan
elemen array. Setiap elemen mempunyai nilai indek sesuai dengan urutannya. Melalui indek inilah kita
dapat mengakses data-data tersebut. Indek dari elemen array ini, baik dalam bahasa C++ maupun Java
dimulai dari 0, bukan 1 seperti dalam bahasa Pascal. Array dideklarasikan dengan tanda [ ] (bracket), baik
dalam bahasa C++ dan Java.

Bentuk umum dari tipe data array adalah :

tipe_data nama_array[jumlah_elemen]

Jika ingin mendeklarasikan sebuah array dengan tipe data integer dengan nama a dan jumlah elemen
array-nya 10 maka kodenya adalah : int a[10];

Baik C++ maupun Java, untuk mengakses elemen array, misalnya elemen ke-10 dari array dan kemudian
menampung nilainya dalam sebuah variabel x, maka sintaknya adalah : x=a[9];

Untuk memasukkan data ke dalam array, sintak yang digunakan adalah : a[nomor_elemen] = data; a[0] = 5;
a[1] = 6; a[2] = 7; dan seterusnya. Agar lebih efisien dan efektif, maka pemasukan data dalam array dapat
menggunakan perulangan seperti berikut ini :

for (i=0; i<< “a*“ << i << “+ = “;

cin >> a[i]; }

Berikut contoh program lengkap dalam bahasa C++ adalah :

#include
using namespace std;
int a[10],jumlah=10;
bool cari(int cariData,int nElemen) {
int i;
for(i=0; i<nELemen;i++)
if(a[i] == cariData)
break;
}
if(i == nElemen) return false;
else return true;
}
void input(int data,int i) {
66
a[i] = data;
}
void hapus(int data,int nElemen) {
int i;
for(i=0; i<< "Data " << data << " tidak terhapus (tidak ada)" << endl;
if( data == a[i] )
break;
}
if(i==nElemen) cout << "Data " << data << " tidak terhapus (tidak ada)" << endl;
else {
for(int j=i; j<< "Data " << data << " dihapus" << endl;
a[j] = a[j+1];
}
cout << "Data " << data << " dihapus" << endl;
}
}
void tampil(int nElemen) {
for(int i=0; i<< a[i] << " ";
cout << endl;
}
void main() {
int data;
for(int i=0; i<< "a[" << i << "] = ";
cin >> data;
input(data,i);
}
tampil(jumlah);
int cariData = 12;
if (cari(cariData,jumlah)==false)
cout << "Data " << cariData << " tidak ditemukan " << endl;
else
cout << "Data " << cariData << " ditemukan" << endl;
hapus(89,jumlah);
jumlah--;
hapus(0,jumlah);
jumlah--;
tampil(jumlah); }
67
B. Inisialisasi Array
Inisialisasi array adalah pemberian nilai default pada array. Pemberian nilai default ini dilakukan pada saat
array dideklarasikan. Bentuk umum dari inisialisasi array ini adalah sebagai berikut :
tipe_data nama_array[jumlah_elemen] = {nilai1,nilai2,…,nilaiN}
untuk contohnya perhatikan kode program berikut :
#include <iostream>
using namespace std;
int main () {
int w [4] = {1,2,3,4};
cout <<”array ke 1 = “<<w*0+<<endl;
cout <<”array ke 2 = “<<w*1+<<endl;
cout <<”array ke 3 = “<<w*2+<<endl;
cout <<”array ke 4 = “<<w*3+<<endl;
return 0;
}
C. Array Multi Dimensi
Array multi dimensi adalah suatu array yang mempunyai lebih dari satu subskrip. Array multi dimensi ini
aplikasinya antara lain untuk matrik. Adapun deklarasi dari array multi dimensi adalah : tipe_data
nama_array[jumlah_elemen_baris] [jumlah_elemen_kolom];
Contoh : int matrik[2][2];
Merupakan matrik 2 X 2.
Berikut adalah contoh program lengkapnya :
#include
using namespace std;
int main(void) {
int t, i, matrik[3][4];
for(t=0; t<< matrik[t][i] << " ";
for(i=0; i<< matrik[t][i] << " ";
matrik[t][i] = (t*4)+i+1;
for(t=0; t<< matrik[t][i] << " ";
for(i=0; i<< matrik[t][i] << " ";

68
cout << matrik[t][i] << " ";
cout << endl;
}
return 0;
}

69
DAFTAR PUSTAKA

Mukharil, Adam Bachtiar.2014.Pemrograman C dan C++.Bandung : Penerbit


Informatika

Raharjo, Budi. 2014. Pemrograman C++ Edisi Revisi. Bandung : Penerbit Informatika

Yulia Yoalinda , yonita. 2018. Pemrograman Dasar Dasar Program Keahlian Teknik
Komputer dan Informatika. Mediatama :Surakarta

Adoc.pub. 2020. Variabel, Tipe data, Konstanta, Operator dan Ekspresi.


https://adoc.pub/variabel-tipe-data-konstanta-operator-dan-ekspresi-pemrogram.html
(diakses pada tanggal 29 Juni 2020)
Fitri. 2018. Tipe data, Konstanta, Variabel, Operator dan Ekspresi.
https://fitrii98.wordpress.com/2018/10/14/materi-5/ diakses pada tanggal 24 April 2021
Andre – Admin Duniailkom.com. 2021. Tipe data, Konstanta, Variabel, Operator dan Ekspresi.
http://duniailkom.com diakses pada tanggal 24 April 2021

70

Anda mungkin juga menyukai