1. MATERI PELATIHAN BERBASIS KOMPETENSI
SEKTOR TEKNOLOGI INFORMASI DAN
KOMUNIKASI
MEMBUAT ALGORITMA
PEMROGRAMAN DASAR
TIK.PR02.001.01
BUKU INFORMASI
DEPARTEMEN TENAGA KERJA DAN TRANSMIGRASI R.I.
DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS
Jl. Jend. Gatot Subroto Kav.51 Lt.7.B Jakarta Selatan
2. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
DAFTAR ISI
Daftar IsiHal
2
BAB I PENGANTAR
5
1.1. Konsep Dasar Pelatihan Berbasis Kompetensi
5
1.2. Penjelasan Modul
5
1.3. Pengakuan Kompetensi Terkini (RCC)
7
1.4. Pengertian-pengertian Istilah
8
BAB II STANDAR KOMPETENSI
10
2.1. Peta Paket Pelatihan
10
2.2. Pengertian Unit Standar
10
2.3. Unit Kompetensi yang Dipelajari
10
2.3.1. Judul Unit
............................................................................
11
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 2 dari 77
Buku Informasi Versi: 01-09-2007
3. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
2.3.2. Kode Unit
............................................................................
11
2.3.3. Deskripsi Unit
............................................................................
11
2.3.4. Elemen Kompetensi
............................................................................
11
2.3.5. Kriteria Unjuk Kerja
............................................................................
11
2.3.6. Batasan Variabel
............................................................................
13
2.3.7. Panduan Penilaian
............................................................................
13
2.3.8. Kompetensi Kunci
............................................................................
15
BAB III STRATEGI DAN METODE PELATIHAN
16
3.1. Strategi Pelatihan
16
3.2. Metode Pelatihan
17
BAB IV MATERI UNIT KOMPETENSI
18
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 3 dari 77
Buku Informasi Versi: 01-09-2007
4. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
4.1 Tujuan Instruksional Umum ..
18
4.2 Tujuan Instruksional Khusus ..
18
4.3 Apa itu Algoritma Pemrograman .
19
4.4 Tipe Data, Variabel dan Konstanta ....................................................21
4.4.1 Tipe Data ....................................................................................22
4.4.1.1 Tipe Data Dasar .............................................................22
4.4.1.2 Tipe Data Bentukan ........................................................28
4.4.2 Variabel ...........................................................................32
4.4.3 Konstanta .........................................................................35
4.5 Alur Logika Program .........................................................................35
4.5.1 Proses Sekuensial ...........................................................35
4.5.2 Proses Percabangan ........................................................37
4.5.2.1 Proses Percabangan Tunggal ...............................38
4.5.2.2 Proses Percabangan Ganda .................................39
4.5.2.3 Proses Percabangan Lebih Dari 2 .........................41
4.5.2.4 Struktur Case .....................................................42
4.5.3 Proses Perulangan ..........................................................43
4.5.3.1 Struktur WHILE – DO ..........................................44
4.5.3.2 Struktur Do - While / Repeat – Until ....................47
4.5.3.3 Struktur FOR ......................................................49
4.6 Menerapkan Pengelolaan Array ........................................................51
4.6.1 Pengenalan Array ...........................................................51
4.6.2 Array N Dimensi ..............................................................56
4.6.3 Algoritma Pengurutan Data (Sorting Data) .......................59
4.6.4 Algoritma Pencarian Data (Searching Data) ......................61
4.7 Pengelolaan File ...............................................................................66
4.7.1 Membuka File .................................................................68
4.7.2 Memanipulasi File ...........................................................69
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 4 dari 77
Buku Informasi Versi: 01-09-2007
5. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
4.7.3 Menutup File ..................................................................71
BAB V SUMBER-SUMBER YANG DIPERLUKAN UNTUK PENCAPAIAN
KOMPETENSI
73
5.1. Sumber Daya Manusia
73
5.2. Sumber-sumber Perpustakaan
74
5.3. Daftar Peralatan/Mesin dan Bahan
75
DAFTAR PUSTAKA
76
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 5 dari 77
Buku Informasi Versi: 01-09-2007
6. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
BAB I
PENGANTAR
1.1. Konsep Dasar Pelatihan Berbasis Kompetensi
• Apakah pelatihan berdasarkan kompetensi?
Pelatihan berdasarkan kompetensi adalah pelatihan yang memperhatikan
pengetahuan, keterampilan dan sikap yang diperlukan di tempat kerja agar dapat
melakukan pekerjaan dengan kompeten. Standar Kompetensi dijelaskan oleh
Kriteria Unjuk Kerja.
• Apakah artinya menjadi kompeten ditempat kerja?
Jika Anda kompeten dalam pekerjaan tertentu, Anda memiliki seluruh
keterampilan, pengetahuan dan sikap yang perlu untuk ditampilkan secara
efektif ditempat kerja, sesuai dengan standar yang telah disetujui.
1.2. Penjelasan Modul
Modul ini dikonsep agar dapat digunakan pada proses Pelatihan
Konvensional/Klasikal dan Pelatihan Individual/Mandiri. Yang dimaksud dengan
Pelatihan Konvensional/Klasikal, yaitu pelatihan yang dilakukan dengan
melibatkan bantuan seorang pembimbing atau guru seperti proses belajar
mengajar sebagaimana biasanya dimana materi hampir sepenuhnya dijelaskan
dan disampaikan pelatih/pembimbing yang bersangkutan.
Sedangkan yang dimaksud dengan Pelatihan Mandiri/Individual adalah
pelatihan yang dilakukan secara mandiri oleh peserta sendiri berdasarkan materi
dan sumber-sumber informasi dan pengetahuan yang bersangkutan. Pelatihan
mandiri cenderung lebih menekankan pada kemauan belajar peserta itu sendiri.
Singkatnya pelatihan ini dilaksanakan peserta dengan menambahkan unsur-
unsur atau sumber-sumber yang diperlukan baik dengan usahanya sendiri
maupun melalui bantuan dari pelatih.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 6 dari 77
Buku Informasi Versi: 01-09-2007
7. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
1.2.1 Desain Modul
Modul ini didisain untuk dapat digunakan pada Pelatihan Klasikal dan Pelatihan
Individual/mandiri :
• Pelatihan klasikal adalah pelatihan yang disampaiakan oleh seorang pelatih.
• Pelatihan individual/mandiri adalah pelatihan yang dilaksanakan oleh peserta
dengan menambahkan unsur-unsur/sumber-sumber yang diperlukan dengan
bantuan dari pelatih.
1.2.2. Isi Modul
a. Buku Informasi
Buku informasi ini adalah sumber pelatihan untuk pelatih maupun peserta
pelatihan.
b. Buku Kerja
Buku kerja ini harus digunakan oleh peserta pelatihan untuk mencatat setiap
pertanyaan dan kegiatan praktik baik dalam Pelatihan Klasikal maupun
Pelatihan Individual / mandiri.
Buku ini diberikan kepada peserta pelatihan dan berisi :
Kegiatan-kegiatan yang akan membantu peserta pelatihan untuk
mempelajari dan memahami informasi.
• Kegiatan pemeriksaan yang digunakan untuk memonitor pencapaian
keterampilan peserta pelatihan.
• Kegiatan penilaian untuk menilai kemampuan peserta pelatihan dalam
melaksanakan praktik kerja.
c. Buku Penilaian
Buku penilaian ini digunakan oleh pelatih untuk menilai jawaban dan
tanggapan peserta pelatihan pada Buku Kerja dan berisi :
• Kegiatan-kegiatan yang dilakukan oleh peserta pelatihan sebagai
pernyataan keterampilan.
• Metode-metode yang disarankan dalam proses penilaian keterampilan
peserta pelatihan.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 7 dari 77
Buku Informasi Versi: 01-09-2007
8. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
• Sumber-sumber yang digunakan oleh peserta pelatihan untuk mencapai
keterampilan.
• Semua jawaban pada setiap pertanyaan yang diisikan pada Buku Kerja.
• Petunjuk bagi pelatih untuk menilai setiap kegiatan praktik.
• Catatan pencapaian keterampilan peserta pelatihan.
1.2.3. Pelaksanaan Modul
Pada pelatihan klasikal, pelatih akan :
• Menyediakan Buku Informasi yang dapat digunakan peserta pelatihan
sebagai sumber pelatihan.
• Menyediakan salinan Buku Kerja kepada setiap peserta pelatihan.
• Menggunakan Buku Informasi sebagai sumber utama dalam
penyelenggaraan pelatihan.
• Memastikan setiap peserta pelatihan memberikan jawaban / tanggapan
dan menuliskan hasil tugas praktiknya pada Buku Kerja.
Pada Pelatihan individual / mandiri, peserta pelatihan akan :
• Menggunakan Buku Informasi sebagai sumber utama pelatihan.
• Menyelesaikan setiap kegiatan yang terdapat pada buku Kerja.
• Memberikan jawaban pada Buku Kerja.
• Mengisikan hasil tugas praktik pada Buku Kerja.
• Memiliki tanggapan-tanggapan dan hasil penilaian oleh pelatih.
1.3Pengakuan Kompetensi Terkini (RCC)
• Apakah Pengakuan Kompetensi Terkini (Recognition of Current
Competency).
Jika Anda telah memiliki pengetahuan dan keterampilan yang diperlukan
untuk elemen unit kompetensi tertentu, Anda dapat mengajukan
pengakuan kompetensi terkini (RCC). Berarti Anda tidak akan
dipersyaratkan untuk belajar kembali.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 8 dari 77
Buku Informasi Versi: 01-09-2007
9. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
• Anda mungkin sudah memiliki pengetahuan dan keterampilan, karena
Anda telah :
a. Bekerja dalam suatu pekerjaan yang memerlukan suatu pengetahuan dan
keterampilan yang sama atau
b. Berpartisipasi dalam pelatihan yang mempelajari kompetensi yang sama
atau
c. Mempunyai pengalaman lainnya yang mengajarkan pengetahuan dan
keterampilan yang sama.
1.4Pengertian-pengertian Istilah
Profesi
Profesi adalah suatu bidang pekerjaan yang menuntut sikap, pengetahuan
serta keterampilan/keahlian kerja tertentu yang diperoleh dari proses
pendidikan, pelatihan serta pengalaman kerja atau penguasaan sekumpulan
kompetensi tertentu yang dituntut oleh suatu pekerjaan/jabatan.
Standardisasi
Standardisasi adalah proses merumuskan, menetapkan serta menerapkan
suatu standar tertentu.
Penilaian / Uji Kompetensi
Penilaian atau Uji Kompetensi adalah proses pengumpulan bukti melalui
perencanaan, pelaksanaan dan peninjauan ulang (review) penilaian serta
keputusan mengenai apakah kompetensi sudah tercapai dengan
membandingkan bukti-bukti yang dikumpulkan terhadap standar yang
dipersyaratkan.
Pelatihan
Pelatihan adalah proses pembelajaran yang dilaksanakan untuk mencapai
suatu kompetensi tertentu dimana materi, metode dan fasilitas pelatihan
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 9 dari 77
Buku Informasi Versi: 01-09-2007
10. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
serta lingkungan belajar yang ada terfokus kepada pencapaian unjuk kerja
pada kompetensi yang dipelajari.
Kompetensi
Kompetensi adalah kemampuan seseorang untuk menunjukkan aspek sikap,
pengetahuan dan keterampilan serta penerapan dari ketiga aspek tersebut
ditempat kerja untuk mwncapai unjuk kerja yang ditetapkan.
Standar Kompetensi
Standar kompetensi adalah standar yang ditampilkan dalam istilah-istilah hasil
serta memiliki format standar yang terdiri dari judul unit, deskripsi unit,
elemen kompetensi, kriteria unjuk kerja, ruang lingkup serta pedoman bukti.
Sertifikat Kompetensi
Adalah pengakuan tertulis atas penguasaan suatu kompetensi tertentu
kepada seseorang yang dinyatakan kompeten yang diberikan oleh Lembaga
Sertifikasi Profesi.
Sertifikasi Kompetensi
Adalah proses penerbitan sertifikat kompetensi melalui proses penilaian / uji
kompetensi.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 10 dari 77
Buku Informasi Versi: 01-09-2007
11. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
BAB II
STANDAR KOMPETENSI
2.1. Peta Paket Pelatihan
Modul yang sedang Anda pelajari ini adalah untuk mencapai satu unit
kompetensi, yang termasuk dalam satu paket pelatihan, yang terdiri atas
unit-unit kompetensi berikut:
2.1.1. TIK.PR2.001.01 Membuat Algoritma Pemrograman Dasar
2.1.2. OP02.003.01A Mengoperasikan Sistem Operasi Microsoft Windows
2.1.3. OP02.001.01 Mengoperasikan Komputer Personal Yang Berdiri
Sendiri (PC Stand alone)
2.2. Pengertian Unit Standar Kompetensi
Apakah Standar Kompetensi?
Setiap Standar Kompetensi menentukan :
a. Pengetahuan dan keterampilan yang diperlukan untuk mencapai
kompetensi.
b. Standar yang diperlukan untuk mendemonstrasikan kompetensi.
c. Kondisi dimana kompetensi dicapai.
Apa yang akan Anda pelajari dari Unit Kompetensi ini?
Anda akan mempelajari tentang Algoritma Pemrograman dasar.
Berapa lama Unit Kompetensi ini dapat diselesaikan?
Pada sistem pelatihan berdasarkan kompetensi, fokusnya ada pada
pencapaian kompetensi, bukan pada lamanya waktu. Namun diharapkan
pelatihan ini dapat dilaksanakan dalam jangka waktu tiga sampai tujuh hari.
Pelatihan ini dijutukan bagi semua user terutama yang tugasnya berkaitan
dengan programming, seperti operator, programmer, staff support, dan staff
admin.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 11 dari 77
Buku Informasi Versi: 01-09-2007
12. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Berapa banyak/kesempatan yang Anda miliki untuk mencapai
kompetensi?
Jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama,
Pelatih Anda akan mengatur rencana pelatihan dengan Anda. Rencana ini
akan memberikan Anda kesempatan kembali untuk meningkatkan level
kompetensi Anda sesuai dengan level yang diperlukan.
Jumlah maksimum usaha/kesempatan yang disarankan adalah 3 (tiga) kali.
2.3. Unit Kompetensi yang Dipelajari
Dalam sistem pelatihan, Standar Kompetensi diharapkan menjadi panduan
bagi peserta pelatihan untuk dapat :
• mengidentifikasikan apa yang harus dikerjakan peserta pelatihan.
• memeriksa kemajuan peserta pelatihan.
• menyakinkan bahwa semua elemen (sub-kompetensi) dan criteria unjuk
kerja telah dimasukkan dalam pelatihan dan penilaian.
KODE UNIT : TIK.PR02.001.01
JUDUL UNIT : Membuat Algoritma Pemrograman Dasar
DESKRIPSI UNIT :
Unit ini menentukan kompetensi yang diperlukan untuk mempelajari algoritma yang
akan diterapkan pada program, tidak tergantung bahasa pemrograman yang akan
digunakan. Algoritma pemrograman merupakan materi dasar yang harus dikuasai
oleh setiap programer.
Untuk tingkat dasar ini penekanan kepada penguasaan algoritma dengan struktur
data yang sederhana (melibatkan variabel statik)
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 12 dari 77
Buku Informasi Versi: 01-09-2007
13. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
ELEMEN KOMPETENSI KRITERIA UNJUK KERJA
1 Menjelaskan varian dan
invarian 1.1 Tipe data, variabel, konstanta dan
parameter yang berlaku umum pada
pemrograman dijelaskan.
1.2 Tipe data baru dan tipe data yang ada
dibuat dan dijelaskan pemanfaatannya.
1.3 Pemakaian nama pada tipe data, variabel,
konstanta dan parameter dijelaskan.
2 Membuat alur logika
pemrograman 2.1 Algoritma dengan skema program
sekuensial dibuat.
2.2 Algoritma dengan skema program
percabangan dibuat.
2.3 Algoritma dengan skema program
pengulangan dibuat.
3 Menerapkan pengelolaan
array 3.1 Algoritma dibuat dengan array atau
dimensi.
3.2 Algoritma pencarian data dan algoritma
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 13 dari 77
Buku Informasi Versi: 01-09-2007
14. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
pengurutan data (sorting) dibuat dengan
menggunakan array.
4 Memelihara pekerjaan
secara praktis 4.1 Algoritma program penulisan data dan
pembacaan data ke dalam media
penyimpanan data berupa hard disk, floppy
disk atau lainnya dibuat dan ditunjukkan.
4.2 Algoritma program pembacaan dan
penulisan data dalam file dibuat secara
sekuensial dan indeks.
BATASAN VARIABEL
1. Unit ini berlaku untuk seluruh sektor teknologi informasi dan komunikasi.
2. Menjaga etika bersifat internal pada bidang teknologi informasi dan komunikasi.
PANDUAN PENILAIAN
1. Pengetahuan dan keterampilan penunjang untuk
mendemontrasikan kompetensi, memerlukan bukti keterampilan dan
pengetahuan di bidang berikut ini :
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 14 dari 77
Buku Informasi Versi: 01-09-2007
15. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
1.1 Pengetahuan dasar :
1.1.1 Matematika dasar dan matematika logika
1.1.2 Flowchart dan dasar pemrograman
1.2 Keterampilan dasar
Mengoperasikan sistem komputer
2. Konteks penilaian
Kompetensi harus diujikan di tempat kerja atau di tempat lain secara teori dengan
kondisi kerja sesuai dengan keadaan normal.
3. Aspek penting penilaian
Aspek yang harus diperhatikan:
3.1 Kemampuan mengidentifikasi varian dan invarian yang berlaku umum
pada pemrograman.
3.2 Kemampuan mengidentifikasi alur logika pemrograman sekuensial dan
membuat algoritma.
3.3 Kemampuan mengidentifikasi pengelolaan array pada program.
3.4 Kemampuan menyimpan program ke dalam media penyimpanan.
3.5 Kemampuan membuat program membaca dan menulis data ke dalam
file secara sekuensial dan indeks.
4. Kaitan dengan unit-unit lainnya
0
4.1 Unit ini didukung oleh pengetahuan dan keterampilan dalam unit-unit
kompetensi yang berkaitan dengan dasar-dasar teknologi informasi
yaitu mengoperasikan PC dan sistem informasi.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 15 dari 77
Buku Informasi Versi: 01-09-2007
16. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
4.2 Pengembangan pelatihan untuk memenuhi persyaratan dalam unit ini
perlu dilakukan dengan hati-hati. Untuk pelatihan pra kejuruan umum,
institusi harus menyediakan pelatihan yang mempertimbangkan
serangkaian konteks industri seutuhnya tanpa bias terhadap sektor
tertentu. Batasan variabel akan membantu dalam hal ini. Untuk sektor
tertentu/khusus, pelatihan harus disesuaikan untuk memenuhi
kebutuhan sektor tersebut.
Kompetensi Kunci
No Kompetensi Kunci Dalam Unit ini Tingkat
1 Mengumpulkan, mengorganisir dan menganalisa informasi 1
2 Mengkomunikasikan ide-ide dan informasi 2
3 Merencanakan dan mengorganisir aktivitas-aktivitas 2
4 Bekerja dengan orang lain dan kelompok 1
5 Menggunakan ide-ide dan teknik matematika 3
6 Memecahkan masalah 2
7 Menggunakan teknologi 1
BAB III
STRATEGI DAN METODE PELATIHAN
3.1. Strategi Pelatihan
Belajar dalam suatu sistem Berdasarkan Kompetensi berbeda dengan yang
sedang “diajarkan” di kelas oleh Pelatih. Pada sistem ini Anda akan bertanggung
jawab terhadap belajar Anda sendiri, artinya bahwa Anda perlu merencanakan
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 16 dari 77
Buku Informasi Versi: 01-09-2007
17. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
belajar Anda dengan Pelatih dan kemudian melaksanakannya dengan tekun sesuai
dengan rencana yang telah dibuat.
Persiapan/perencanaan
a. Membaca bahan/materi yang telah diidentifikasi dalam setiap tahap belajar
dengan tujuan mendapatkan tinjauan umum mengenai isi proses belajar Anda.
b. Membuat catatan terhadap apa yang telah dibaca.
c. Memikirkan bagaimana pengetahuan baru yang diperoleh berhubungan dengan
pengetahuan dan pengalaman yang telah Anda miliki.
d. Merencanakan aplikasi praktik pengetahuan dan keterampilan Anda.
Permulaan dari proses pembelajaran
a. Mencoba mengerjakan seluruh pertanyaan dan tugas praktik yang terdapat pada
tahap belajar.
b. Merevisi dan meninjau materi belajar agar dapat menggabungkan pengetahuan
Anda.
Pengamatan terhadap tugas praktik
a. Mengamati keterampilan praktik yang didemonstrasikan oleh Pelatih atau orang
yang telah berpengalaman lainnya.
b. Mengajukan pertanyaan kepada Pelatih tentang konsep sulit yang Anda
temukan.
Implementasi
a. Menerapkan pelatihan kerja yang aman.
b. Mengamati indicator kemajuan personal melalui kegiatan praktik.
c. Mempraktikkan keterampilan baru yang telah Anda peroleh.
Penilaian
Melaksanakan tugas penilaian untuk penyelesaian belajar Anda.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 17 dari 77
Buku Informasi Versi: 01-09-2007
18. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
3.2. Metode Pelatihan
Terdapat tiga prinsip metode belajar yang dapat digunakan. Dalam beberapa
kasus, kombinasi metode belajar mungkin dapat digunakan.
Belajar secara mandiri
Belajar secara mandiri membolehkan Anda untuk belajar secara individual, sesuai
dengan kecepatan belajarnya masing-masing. Meskipun proses belajar dilaksanakan
secara bebas, Anda disarankan untuk menemui Pelatih setiap saat untuk
mengkonfirmasikan kemajuan dan mengatasi kesulitan belajar.
Belajar Berkelompok
Belajar berkelompok memungkinkan peserta untuk dating bersama secara teratur
dan berpartisipasi dalam sesi belajar berkelompok. Walaupun proses belajar memiliki
prinsip sesuai dengan kecepatan belajar masing-masing, sesi kelompok memberikan
interaksi antar peserta, Pelatih dan pakar/ahli dari tempat kerja.
Belajar terstruktur
Belajar terstruktur meliputi sesi pertemuan kelas secara formal yang dilaksanakan
oleh Pelatih atau ahli lainnya. Sesi belajar ini umumnya mencakup topic tertentu.
BAB IV
MATERI UNIT KOMPETENSI
MEMBUAT ALGORITMA PEMROGRAMAN DASAR
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 18 dari 77
Buku Informasi Versi: 01-09-2007
19. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
4.1 Tujuan Instruksional Umum
o Siswa mampu mengerti tentang apa itu Algoritma Pemrograman.
o Siswa mampu mengerti dasar – dasar Algoritma Pemrograman.
o Siswa mampu berpikir secara logis dalam menyelesaikan masalah.
o Siswa mampu menganalisa masalah dan menciptakan solusti untuk
menyelesaikan sebuah masalah
4.2 Tujuan Instruksional Khusus
o Siswa dapat mengetahui seberapa pentingnya Algoritma Pemrograman
sebagai dasar untuk mempelajari pemrograman lanjut.
o Siswa dapat mengerti dasar – dasar pemikiran dalam menyelesaikan
masalah dalam pemrograman.
o Siswa dapat mengerti tentang logika dasar pemrograman.
o Siswa dapat mengerti tentang tipe – tipe data dasar dalam
pemrograman.
o Siswa dapat memahami tentang alur program meliputi sekuensial,
percabangan dan perulangan.
o Siswa dapat mengerti tentang dasar – dasar struktur data.
o Siswa dapat memahami mengenai dasar – dasar file beserta
pengelolaannya.
Dasar – Dasar Pemrograman
4.3 Apa itu Algoritma Pemrograman ?
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 19 dari 77
Buku Informasi Versi: 01-09-2007
20. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Algoritma adalah urutan langkah – langkah logis penyelesaian masalah yang
disusun secara sistematis. Berdasarkan defisini algoritma diatas maka dapat
diartikan sebuah Algoritma Pemrograman adalah suatu urutan yang logis dan
sistematis yang digunakan untuk menyelesaikan sebuah penyususan program
komputer.
Dasar – dasar dari algoritma pemrograman dibagi menjadi 3 bagian, yaitu
1 Proses
2 Instruksi
3 Aksi
Pada dasarnya sebuah algoritma adalah deskripsi pelaksanaan suatu proses
yang disusu berdasarkan sederetan langkah instruksi yang logis. Tiap langkah
instruksi tersebut melakukan suatu tindakan (aksi) yang akan menghasilkan
sejumlah operasi yang bersesuaian dengan aksi tersebut. Hasil yang diperoleh
dari pengerjaan suatu aksi tersebut dapat dibandingkan berdasarkan keadaan
sebelum aksi dimulai dan keadaan pada saat aksi selesai dikerjakan. (Lihat
contoh dibawah)
.
Contoh kasus :
Terdapat 2 Gelas A dan B, gelas A berisi warna merah dan gelas B berisi warna
biru. Bagaimana memindahkan isi dari gelas A ke B dan gelas B ke A ?
Deskripisi :
Keadaan awal : Gelas A berisi warna merah dan gelas B berisi warna biru.
Aksi :
-
- Pindahkan isi dari gelas A ke dalam gelas C
- Pindahkan isi gelas B ke dalam gelas A
- Pindahkan isi gelas C ke dalam gelas A.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 20 dari 77
Buku Informasi Versi: 01-09-2007
21. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Keadaan akhir : Gelas A berisi warna biru dan gelas B berisi warna merah.
Contoh diatas memperlihatkan urutan yang logis dalam menyelesaikan suatu
masalah / memperoleh hasil yang diinginkan.
Struktur Dasar Algortima
1. Runtunan (Sequence)
2. Pemilihan (Selection)
3. Pengulangan (Repetition)
Runtunan
Runtunan (Sequence) terdiri dari satu atau lebih instruksi yang akan dikerjakan
secara berurutan sesuai dengan urutan penulisannya. Urutan instruksi
menentukan keadaan akhir algoritma, bila urutannya diubah akan memberikan
hasil yang berbeda.
Contoh :
Instruksi 1
Instruksi 2
Instruksi 3
Pemilihan
Pemilihan (Selection) adalah suatu kondisi dimana sebuah instruksi dijalankan
apabila kondisi tertentu dipenuhi. Ini akan mengakibatkan tidak semua instruksi
akan dijalankan sesuai urutan dan tidak semua instruksi akan dijalankan.
Contoh :
Jika nilai a lebih kecil dari 10 maka
Cetak nilai a sebanyak 10 kali ke layar monitor
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 21 dari 77
Buku Informasi Versi: 01-09-2007
22. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Pengulangan
Salah satu kelebihan komputer adalah kemampuan untuk mengerjakan proses
yang sama berulang kali tanpa mengenal lelah. Ini akan mengakibatkan sebuah
instruksi mungkin dijalankan beberapa kali sebelum menjalankan instruksi yang
lain.
Contoh :
Tuliskan angka dari 1 sampai 100
Angka = 0
Repeat
Tuliskan angka
Tambahkan nilai angka dengan 1
Until angka = 100
Pada praktenya, ketiga elemen itu dapat dikombinasikan menjadi sekumpulan
instruksi yang membangun sebuah program komputer. Namun pemahaman
tentang dasar dari masing – masing elemen sangatlah penting.
4.4 Tipe data, Variabel dan Konstanta
Dalam pembahasan mengenai pengertian dan dasar – dasar dari algoritma
pemrograman telah dijelaskan mengenai urutan kerja dari sekumpulan
instruksi yang digunakan untuk memecahkan sebuah permasalahan.
Pada pembahasan ini kita akan mempelajari beberapa hal, antara lain :
4.4.1 Tipe Data
Pada dasarnya sebuah program komputer bekerja dengan memanipulasi
obyek (data) di dalam memori. Obyek yang akan diprogram bermacam –
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 22 dari 77
Buku Informasi Versi: 01-09-2007
23. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
macam jenis dan tipenya, misalnya nilai numerik, karakter, string dan
rekaman (record). Tipe data terbagi menjadi beberapa bagian, antara lain :
4.4.1.1 Tipe Data Dasar
A. Tipe Logika / Bilangan Logika
Tipe data ini hanya memiliki 2 nilai saja, benar atau salah atau 0 atau
1. Nilai 0 ini akan melambangkan salah dan 1 akan melambangkan
benar. Tipe data ini biasanya digunakan untuk operasi – operasi
logika (logical operation).
Operasi logika ini akan menghasilkan nilai dalam ranah tipe boolean,
yaitu betul atau salah. Operasi yang dapat digunakan untuk operasi
logika adalah : not, and, or dan xor.
Dibawah ini akan diberikan contoh pemakaiannya :
Jika a dan b adalah peubah (variabel) yang bertipe boolean / logika
maka hasil variabel a dan b dengan operator boolean tersebut
diberikan berdasarkan tabel kebenaran berikut :
A B A and B A or B A xor B
True True True true False
True false false True True
False True false True True
False False False False False
B. Tipe Bilangan Bulat
Tipe ini adalah tipe yang sudah kita kenal dengan baik dalam
kehidupan sehari – hari. Tipe data ini mempunyai nilai yang tidak
mengandung pecahan desimal, misalnya : 34, 8, 1200, 10 dan
seterusnya. Nama tipe dari bilangan bulat adalah integer. Secara
teori, tipe bilangan bulat memiliki ranah nilai yang tidak terbatas
dimulai dari minus tidak terhingga sampai plus tidak terhingga.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 23 dari 77
Buku Informasi Versi: 01-09-2007
24. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Namum dalam penerapan algoritma kita dapat mendefinisikan tipe
bilangan bulat dalam suatu rentang nilai tertentu. Penetapan rentang
nilai ini dimaksudkan untuk menyatakan bahwa nilai dari suatu obyek
hanya boleh pada ranah nilai tersebut.
Contoh :
Misalkan sebuah obyek jumlah murid 1 kelas yang berisi 100 orang,
hendaknya didefinisikan pada tipe bilangan bulat yang memiliki
rentang nilai dari 1 .. 100. Apabila sebuah obyek tidak didefinisikan
rentang nilainya, maka dianggap obyek tersebut memiliki rentang nilai
dari minus tidak terhingga sampai plus tidak terhingga.
Pada implementasinya, tipe integer memulai rentang nilai yang
terbatas dan tergantung dari setiap kompiler dimana kita membuat
program aplikasinya. Berikut saya berikan contoh pada kompiler
Turbo Pascal.
Tipe Rentang Nilai Format
Byte 0 ... 255 Unsigned 8 – bit
Shortlist - 128 ... 127 Signed 8 – bit
Word 0 ... 65535 Unsigned 16 – bit
Integer - 32768 ... 32767 Signed 16 bit
Longint -2147483648 ... 2147483647 Signed 32 bit
Rentang nilai dari tipe data ini sangat bervariatif dan bergantung pada
jenis program kompilernya. Contoh diatas tidak berlaku bagi semua
jenis kompiler.
Operasi
Operasi yang dapat dilakukan pada tipe data ini ada 2 macam, yaitu :
Operasi artimatika dan Operasi perbandingan.
- Operasi Aritmatika
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 24 dari 77
Buku Informasi Versi: 01-09-2007
25. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Operasi aritmatika pada bilangan bulat akan menghasilkan
bilangan bulat juga. Operator aritmatika yang digunakan
antara lain :
+ (penjumlahan)
- (Pengurangan)
* (Perkalian)
Div (Pembagian)
Mod (sisa hasil bagi)
- Operasi Perbandingan
Operasi perbandingan terhadap bilangan bulat dengan
menggunakan operator relasional akan menghasilkan nilai
booelan (true atau false). Operator perbandingan yang
digunakan antara lain :
< (lebih kecil)
< (lebih kecil atau sama dengan)
> (lebih besar atau sama dengan)
== (sama dengan)
≠ (tidak sama dengan)
Contoh operasi perbandingan :
3<8 (true)
9≤9 (true)
( 24 div 3) ≠ 8 (false)
C. Tipe Bilangan Riil
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 25 dari 77
Buku Informasi Versi: 01-09-2007
26. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Tipe bilangan riil adalah bilangan yang mengandung nilai pecahan /
desimal misalnya 3.65, 0.0003, 29.0 dan lain lain. Karakter yang
identik dengan bilangan desimal adalah harus selalu mengandung “.”
(titik). Jadi apabila terdapat nilai 20 maka akan dianggap sebagai
bilangan bulat, sedangkan nilai 20.0 akan dianggap sebagai bilangan
riil. Selain itu bilangan riil juga dapat dituliskan dengan notasi
eksponential (E) yang artinya perpangkatan sepuluh. Nama tipe dari
bilangan riil ini lebih sering dikenal dengan real.
Secara teoritis, tipe data ini memiliki ranah nilai yang tidak terbatas
dimulai dari minus tak terhingga hingga plus tak terhingga. Namun
pada implementasinya, tipe bilangan riil juga memiliki batas nilai yang
tergantung pada masing – masing kompiler. Berikut akan diberikan
contoh pada kompiler Turbo Pascal.
Tipe Rentang Nilai Format
Real 2.9 X 10 6 byte
Single 4 byte
Double 8 byte
Extended 10 byte
Operasi
Operasi yang dapat dilakukan pada tipe data ini ada 2 macam, yaitu :
Operasi artimatika dan Operasi perbandingan.
- Operasi Aritmatika
Operasi aritmatika pada bilangan riil akan menghasilkan
bilangan riil juga. Operator aritmatika yang digunakan antara
lain :
+ (penjumlahan)
- (Pengurangan)
* (Perkalian)
Div (Pembagian)
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 26 dari 77
Buku Informasi Versi: 01-09-2007
27. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Mod (sisa hasil bagi)
- Operasi Perbandingan
Operasi perbandingan terhadap bilangan riil dengan
menggunakan operator relasional akan menghasilkan nilai
booelan (true atau false). Operator perbandingan yang
digunakan antara lain :
< (lebih kecil)
< (lebih kecil atau sama dengan)
> (lebih besar atau sama dengan)
== (sama dengan)
≠ (tidak sama dengan)
Contoh operasi perbandingan :
0.003 < 0. 3 (true)
8.0 ≥ 5 (false)
3.0 ≠ 3.5 (true)
D. Tipe Karakter
Tipe data yang termasuk karakter ini adalah huruf – huruf alfabet,
tanda baca, angka ‘0’, ‘1’, ‘2’, .... dan karakter – karakter khusus
seperti ‘<’, ‘?’, dan sebagainya. Tipe data ini biasa dikenal sebagi
char.
Rentang nilai dari tipe data ini adalah karakter – karakter yang telah
disebutkan diatas, untuk lebih detilnya dapat melihat pada buku –
buku yang memuat daftar tabel ASCII. Karakteristik yang identik
dengan tipe data ini adalah setiap karakter harus diapit dengan tanda
petik tunggal.
Contoh :
‘a’, ‘1’, ‘ ‘, ‘+’, ‘?’, ‘&’.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 27 dari 77
Buku Informasi Versi: 01-09-2007
28. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Satu hal yang perlu diperhatikan adalah : bilangan 1 adalah integer
dan ‘1’ adalah karakter.
Operasi
Satu – satunya operasi yang digunakan untuk tipe data ini adalah
operasi perbandingan.
- Operasi perbandingan
Operasi perbandingan terhadap tipe data karakter dengan
menggunakan operator relasional akan menghasilkan nilai
boolean (true atau false). Operator perbandingan yang
digunakan antara lain :
< (lebih kecil)
< (lebih kecil atau sama dengan)
> (lebih besar atau sama dengan)
== (sama dengan)
≠ (tidak sama dengan)
Contoh :
‘a’ == ‘a’ (true)
‘m’ < ‘z’ (true)
‘y’ ≠ ‘Y’
Hal yang harus diperhatikan dalam operasi perbandingan pada
tipe data karakter adalah operasi ini membandingkan kode
ASCII diantara 2 obyek yang dibandingkan. Jadi bisa dilihat
pada contoh diatas bahwa ‘y’ tidak sama dengan ‘Y’, ini
dikarenakan kode ASCII dari 2 karakter tersebut memang
berbeda.
4.4.1.2 Tipe Data Bentukan
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 28 dari 77
Buku Informasi Versi: 01-09-2007
29. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
A. String / Kalimat
String adalah sebuah kalimat atau dapat dikatakan merupakan
kumpulan dari karakter. Tipe data ini dikenal juga dengan nama
string.
Rentang nilai dari string adalah sesuai dengan rentang nilai dari
karakter (lihat pembahasan diatas). String adalah bentukan dari
sederetan karakter yang dikombinasikan menjadi satu untuk
membentuk sebuah arti tertentu.
Contoh :
“Bandung”, “Jakarta”, “ABCDE”, “12345”
hal yang perlu diperhatikan adalah string “123” berbeda dengan 123.
Operasi
Operasi yang dapat dilakukan pada tipe data string ada 2 macam,
yaitu :
- Operasi Penyambungan (Concatenation)
Operasi penyambungan ini berfungsi untuk menggabungkan 2
string atau lebih. Operator yang digunakan adalah “+” dan “&”
(Tergantung dari jenis kompilernya)
Contoh Concatenation :
“TEKNIK “ + “INFORMATIKA” = “TEKNIK INFORMATIKA”
“1” + “2” = “12”
Hal yang perlu diperhatkan adalah operator “+” ini bukanlah
operator penjumlahan / operator artimatika.
- Operasi Perbandingan
Operasi perbandingan terhadap tipe data string dengan
menggunakan operator relasional akan menghasilkan nilai
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 29 dari 77
Buku Informasi Versi: 01-09-2007
30. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
booelan (true atau false). Operator perbandingan yang
digunakan antara lain :
< (lebih kecil)
< (lebih kecil atau sama dengan)
> (lebih besar atau sama dengan)
== (sama dengan)
≠ (tidak sama dengan)
Contoh :
“abcde” == “abc” (false)
“aku” < “AKU” (true)
Hal yang perlu diperhatikan dalam operasi perbandingan pada
tipe data string adalah kompiler akan membandingkan
berdasarkan kode ASCII dari tiap – tiap karakter terhadap kode
ASCII dari obyek lainnya. Prinsip ini sebenarnya sama dengan
prinisp operasi perbandingan pada tipe data karakter yang
telah dijelaskan di atas.
B. Tipe data dasar yang diberi nama tipe baru
Pemrogram dapat memberi sebuah nama baru dati tipe data dasar
yang ada, dengan menambahkan kata kunci type. Pengubahan nama
ini biasanya digunakan bagi para programmer untuk memudahkan
dalam penamaan pada variabel pada penulisan program.
Contoh :
Type bilBulat : integer
Penulisan diatas berarti bilBulat memiliki tipe yang sama dengan
integer dan dapat digunakan untuk mendeklarasikan sebuah obyek
integer.
C. Record / Rekaman
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 30 dari 77
Buku Informasi Versi: 01-09-2007
31. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Tipe data rekaman atau bisa disebut record. Record ini merupakan
dasar daripada pemrograman basis data. Pada dasarnya record
adalah sekumpulan baris data yang tersusun dari beberapa field.
Contoh :
Nama Alamat Telp NO_Ktp
Budi Gelong Baru 72 713.26.905 123/456/789
Pada contoh diatas akan menjelaskan mengenai dasar dari field dan
record sendiri. Field adalah setiap kolom (nama, alamat, telp dan no
ktp). Field ini adalah data tunggal yang berdiri sendiri dan belum
memiliki arti yang sempurna sebelum disusun menjadi 1 kesatuan.
Record adalah 1 baris data (Budi, Gelong Beru 72,
713.26.905,123/456/789). Record adalah sekumpulan baris data yang
disusun dari field – field.
Pendefinisian Tipe Data Record
Pendefinisian tipe data record sangat tergantung dari bahasa
pemrograman yang digunakan, disini akan diberikan contoh
menggunakan bahasa pemrograman Turbo Pascal.
Contoh :
Record DataMhs adalah record yang menyimpan nilai ujian
mahasiswa beserta kode mata kuliah yang diambil.
Type DataMhs : record
< NIM : string, Nama : string, KdMtk : string, nilai : real >
Pendefinisian tipe data record menggunakan kata kunci type
kemudian dilanjutkan dengan menuliskan nama Record dan
menuliskan field – field yang ingin ditampung dalam 1 record.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 31 dari 77
Buku Informasi Versi: 01-09-2007
32. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Penulisan dan pembacaan dari Record
Sebelum mempelajar tentang bagaimana menulis dan membaca dari
record, ada baiknya kita pelajari dahulu bagaimana mendefinisikan
obyek dari sebuah tipe data record yang telah didefinisikan.
Contoh :
Misalkan anda mempunyai sebuah struktur record yang bernama
DataMhs, dan saat ini hendak memberi nilai dari masing – masing
field yang ada di dalam struktur tersebut.
Buatlah obyek yang merujuk ke struktur record.
DataMhs rudy
Mendefinisikan obyek rudy sebagai obyek nyata dari DataMhs
Memasukkan nilai ke dalam setiap field dalam struktur record
Rudy.Nama = “Rudy Haryanto”
Rudy.NIM = “0600671590”
Rudy.KdMtk = “MTK001”
Rudy.Nilai = 98
Menampilkan nilai dari struktur record ke standar output
Cetak Rudy.NIM + Rudy.Nama + Rudy.KdMtk + Rudy.Nilai
Akan memberikan hasil sama seperti contoh tabel diatas. Hal yang
harus diperhatikan pada operator ‘+’ tersebut bukanlah operator
artimatika dan berupa operator penggabungan string ( lihat
pembahasan tipe data string ).
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 32 dari 77
Buku Informasi Versi: 01-09-2007
33. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
4.4.2 Variabel
Setiap mempelajari sebuah bahasa pemrograman anda pasti akan
dihadapkan dengan yang namanya variabel. Variabel merupakan
sebuah obyek yang digunakan untuk menyimpan data tertentu
berdasarkan tipe data dasar tertentu.
Setiap obyek yang ada di dunia pasti memiliki nama, begitu pula
dalam bahasa pemrograman. Seluruh variabel yang dideklarasikan
harus memiliki nama dan tipe dasarnya. Ini dimaksudkan untuk
memudahkan kompiler dalam mengidentifikasi variabel – variabel
yang digunakan dalam proses perhitungan.
Variabel memiliki aturan dalam penamaan yang biasanya berlaku bagi
hampir seluruh bahasa pemrograman.
- Nama harus dimulai dengan huruf alfabet, tidak boleh dimulai
dengan angka , spasi atau karakter khusus lainnya
- Bagi bahasa pemgograman tertentu huruf besar dan kecil tidak
berpengaruh, tapi bagi bahasa pemrograman tertentu akan
dibedakan.
- Tidak boleh mengandung operator artimatika, tanda baca dan
karakter khusus lainnya.
- Tidak boleh dipisahkan menggunakan spasi, apabila ingin
memisahkan harus menggunakan karakter “_”.
- Panjang nama tidak dibatas, tetapi hendaknya tidak terlalu
panjang sehingga tidak menimbuikan kebingungan saat menulis
program.
- Penamaan hendaknya disesuaikan dengan kegunaan dari
variabel tersebut.
Contoh :
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 33 dari 77
Buku Informasi Versi: 01-09-2007
34. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Integer nilai_ujian (variabel bernama nilai_ujian dengan tipe
integer)
Integer nilai ujian (salah, mengandung spasi)
String nama-murid (salah, mengandung karakter ‘-‘)
String nama_murid (benar, menggunakan karakter “_”)
Pemberian nilai pada variabel
Setelah mempelajari bagaimana cara mendeklarasikan sebuah
variabel, kita akan mempelajari bagaimana cara memberi nilai
kedalam sebuah variabel berdasarkan tipe data dasarnya.
A. Secara Langsung
Pemberian nilai secara langsung ini berarti memberikan sebuah nilai
ke dalam variabel secara langsung di dalam teks algortma program.
Nilai yang diberikan dapat berupaq konstanta, tetapan atau nama
variabel lain. Tipe yang diberikan harus sesuai dengan tipe data dari
variabel penerima.
Contoh :
Integer nilai
Nilai = 10 (benar)
Integer nilai_2
Nilai2 = nilai (benar, memasukkan nilai dari variabel lain)
Nilai2 = “alo” (salah, tipe dasarnya tidak sama)
B. Melalui Piranti Masukan (Standart Input)
Metode untuk memberikan nilai ke dalam sebuah variabel tidak hanya
dilakukan secara langsung, namun juga dapat dilakukan melalui
sebuah piranti masukan (keyboard, file ataupun database).
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 34 dari 77
Buku Informasi Versi: 01-09-2007
35. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Setiap bahasa pemrograman menggunakan function yang berbeda –
beda dalam menangani proses inputan nilai dari piranti masukan.
Contoih dibawah ini menggunakan bahasa Turbo Pascal.
Contoh :
Integer nilai
Read (nilai)
Function read() ini digunakan untuk menerima inputan dary keyboard.
Jadi ketika anda mengetikkan angka 10 dan menekan ENTER, maka
nilai akan berisikan angka 10.
Apabila anda mengetikkan nilai yang memiliki tipe yang berbeda dari
pada tipe data dari variabel penampungnya, respon yang akan
diberikan oleh kompiler berbeda – beda dan tergantung dari masing –
masing kompiler. Ada yang langsung memberikan pesar error namun
ada pula yang tetap dapat menjalankan instruksi selanjutnya baru
kemudian menampilkan nilai yang salah ketika hendak mengakses isi
dari variabel tersebut.
4.4.3 Konstanta
Konstanta adalah sebuah variabel yang memiliki nilai yang tetap
selama program berlangsung dan tidak dapat dirubah nilainya.
Konstanta dibagi menjadi 2 bagian, yaitu :
A. Konstanta yang telah ditetapkan
Konstanta ini biasanya telah ada bersamaan dengan satu paket
dari bahasa pemrograman yang digunakan, dan nilainya tidak
dapat dirubah. Biasanya digunakan untuk mendukung function –
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 35 dari 77
Buku Informasi Versi: 01-09-2007
36. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
function yang disediakan pada masing – masing bahasa
pemrograman.
B. Konstanta yang kita tetapkan sendiri
Konstanta yang kita ciptakan sendiri, nama ataupun isi dari
konstanta ini terserah pada kita. Kata kunci yang digunakan
biasanya adalah const.
Contoh :
Const PHI = 3.14
Const keyWords = “rahasia”
Const nMaks = 100
4.5 Alur Logika Program
Algoritma Pemrograman terdiri dari sekumpulan instruksi yang disusun
berdasarkan urutan logis tertentu untuk memecahkan suatu permasalahan.
Alur logika program dibagi menjadi 3 bagian besar, antara lain :
4.5.1 Proses sekuensial
Proses sekuensial berarti kompiler program akan menjalankan instruksi
yang ada satu persatu hingga ditemukan dari akhir sebuah instruksi.
Karakteristik dari proses sekuensial adalah :
- Setiap instruksi dikerjakan satu per satu
- Setiap instruksi dijalankan hanya sekali saja, tidak ada perulangan.
- Setiap instruksi dijalankan tepat sesuai dengan urutan sebagaimana
ditulis di dalam teks algoritma
- Kompiler akan berhenti menjalankan instruksi setelah bertemu
dengan instruksi terakhir.
Contoh :
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 36 dari 77
Buku Informasi Versi: 01-09-2007
37. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Penulisan contoh ini menggunakan bahasa pseudocode dan bahasa
pemgoraman Turbo C.
Pseudocode
String nama
Integer nilai
Read nama
Read nilai
Nilai = nilai * 1.4
Print “Nama anda : “ + nama + “ Nilai anda : “ + nilai
Bahasa C
#include <stdio.h>
void main(){
// deklarasi variabel berdasarkan tipe data dasarnya.
char *nama;
int nilai;
// instruksi secara sekuensial mulai dilaksanakan.
scanf(“%s”,nama);
scanf(“%d”,&nilai);
nilai = nilai * 1.4;
printf(“Nama anda : %s Nilai anda : %d“,nama,&nilai);
// akhir dari instruksi dilaksanakan.
}
Kedua contoh diatas sama – sama menggunakan konsep sekuensial
meskipun menggunakan 2 jenis bahasa pemrograman yang berbeda.
Program akan menjalankan instruksi pertama dengan mendeklarasikan
variabel kemudian menjalankan proses input data, mengalikan isi dari
variabel nilai sebanyak 1.4 dan instruksi terakhir adalah menuliskan hasilnya
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 37 dari 77
Buku Informasi Versi: 01-09-2007
38. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
ke stardar output (biasanya monitor), setelah itu program akan sslesai
karena tidak instruksi lagi yang dijalankan.
Hal yang perlu diperhatikan adalah : Urutan sebuah instruksi sangat
memgang peranan yang dominan, apabila instruksi diatas posisinya ditukar
antara :
Scanf(“%d”, &nilai); dan
Nilai = nilai * 1.4;
Maka dapat dipastikan akan memberikan hasil yang sangat berbeda dari
yang kita inginkan, karena kompiler hanya menjalankan sesuai dengan
peletakan urutan instruksi saja.
4.5.2 Proses percabangan
Percabangan adalah suatu kondisi dimana sebuah instruksi tidak dijalankan
secara sekuensial, tetapi lebih berdasarkan pada kondisi – kondisi tertentu
yang ditetapkan oleh pembuat program. Pada inti pemrograman,
percabangan memegang peranan yang sangat penting dalam penyusunan
program.
Contoh :
- Sebuah sistem menginginkan adanya otorisasi kepada pengguna.
Sehingga pengguna yang namanya terdaftar di data perusahaan yang
bisa menggunakan sistem tersebut.
- Sebuah program menginginkan pencatatan data hanya dapat dilakukan
pada pukul 09.00 – 10.00.
- Dan lain sebagainya.
Proses percabangan memiliki 3 jenis, antara lain :
4.5.2.1 Percabangan Tunggal
Percabangan tunggal bekerja apabila hanya ada 1 alternatif instruksi
saja yang dijalankan. Logika ini memungkinkan kompiler untuk
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 38 dari 77
Buku Informasi Versi: 01-09-2007
39. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
menjalankan sebuah instruksi atau tidak sama sekali. Kompiler baru
akan menjalankan instruksi yang ada di dalam notasi percabangan
apabila kondisi yang diinginkan terpenuhi atau memberikan nilai akhir
true. Apabila kondisi tersebut memberikan nilai akhir false maka tidak
akan ada instruksi yang dijalankan.
Notasi algortimik yang dgunakan adalah :
If (kondisi) {
Instruksi yang hendak dijalankan ......
}
Notasi algoritmik yang digunakan ini masing – masing berbeda
tergantung dari bahasa pemrograman yang dipakai. Pada pembahasan
ini kami menggunakan contoh menggunakan bahasa pemrograman
Turbo C.
Contoh :
Program membaca inputan dari keyboard dan apabila diinput oleh
karakter vokal maka program akan menuliskan “Huruf Hidup” dan
apabila bukan maka program tidak akan menjalankan apapun.
#include <stdio.h>
void main(){
char huruf;
scanf(“%c”,&huruf);
if (huruf == ‘a’ || huruf = ‘i’ || huruf = ‘u’ || huruf ==’e’ || huruf == ‘o’)
printf (“Huruf Hidup”);
}
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 39 dari 77
Buku Informasi Versi: 01-09-2007
40. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Program membacan apakah bilangan yang diinput habis dibagi 2 atau
tidak, apabila habis dibagi 2 maka program akan menuliskan “Bilangan
genap” dan bukan maka program tidak akan menjalankan apapun.
#include <stdio.h>
void main(){
int angka;
scanf(“%d”,&angka);
if (angka % 2 == 0)
printf (“Bilangan Genap”);}
4.5.2.2 Percabangan Ganda
Percabangan ganda apabila terdapat 2 alternatid 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”.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 40 dari 77
Buku Informasi Versi: 01-09-2007
41. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
#include <stdio.h>
void main(){
int angka;
scanf(“%d”,&angka);
if (angka % 2 == 0)
printf (“Bilangan Genap”);
else
printf(“Bilangan Ganjil”);
}
Program memeriksa bilangan yang lebih besar dari 2 inputan bilangan.
#include <stdio.h>
void main(){
int angka1, angka2;
scanf(“%d”,&angka1);
scanf(“%d”,&angka2);
if (angka1 > angka2)
printf (“Bilangan pertama lebih besar dari Bilangan kedua”);
elseprintf (“Bilangan kedua lebih besar dari Bilangan pertama”);
}
4.5.2.3 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.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 41 dari 77
Buku Informasi Versi: 01-09-2007
42. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
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 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”);
}
4.5.2.4 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 algoritmiknya :
switch (kondisi){
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 42 dari 77
Buku Informasi Versi: 01-09-2007
43. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
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.
#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 %”);
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 43 dari 77
Buku Informasi Versi: 01-09-2007
44. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
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.
4.5.3 Proses 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.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 44 dari 77
Buku Informasi Versi: 01-09-2007
45. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Selain itu biasanya di perulangan juga terdapat 2 hal dibawah ini, antara
lain :
1. Inisialisasi : aksi yang dilakukan sebelum pengulangan dilakukan
pertama kali.
2. 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.
4.5.3.1 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.
- 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 :
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 45 dari 77
Buku Informasi Versi: 01-09-2007
46. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
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 kondisi
terminasi.
}}
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 kondisi 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)
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 46 dari 77
Buku Informasi Versi: 01-09-2007
47. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Contoh 1 :
Program menulis angka dari 1 .. 100.
# include <stdio.h>
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 kondisi
terminasi.
}}
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);
}}
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 47 dari 77
Buku Informasi Versi: 01-09-2007
48. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
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.
4.5.3.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.
Notasi algoritmiknya adalah :
do { repeat
Tubuh perulangan atau
}while (KONDISI); until KONDISI
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 48 dari 77
Buku Informasi Versi: 01-09-2007
49. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
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);
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 49 dari 77
Buku Informasi Versi: 01-09-2007
50. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
// 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 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.
4.5.3.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.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 50 dari 77
Buku Informasi Versi: 01-09-2007
51. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
#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.
4.6 Menerapkan Pengelolaan Array
4.6.1 Pengenalan Array.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 51 dari 77
Buku Informasi Versi: 01-09-2007
52. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Sebuah variabel hanya mampu menyimpan sebuah nilai berdasarkan tipe data
tertentu, variabel tidak mampu menyimpan beberapa buah data dengan tipe
yang sejenis. Seringkali dalam pemrograman kita harus mengolah sekumpulan
data dengan tipe data yang sama. Misalnya nilau ujian 50 orang, no telp dari
seluruh karyawan, dan sebagainya. Apabila kita mengacu pada penggunaan
variabel, maka dapat dibayangkan berapa banyak nama variabel yang akan
diperlukan dan betapa sukarnya untuk mengorganisasi variabel sebanyak itu.
Array mampu memberikan solusi atas permasalah tersebut, karena dengan
penggunaan array tidak diperlukan lagi perulangan variabel yang memilikit
tipe data dasar sama dengan nama berbeda.
Array adalah struktur data yang mampu menyimpan sekumpulan data dengan
tipe yang sama, setiap elemen data dipisahkan menggunakan indeks. Pada
bahasa pemrograman pada umumnya, indeks dari sebuah array selalu diawali
dari 0 hingga n -1 (n = jumlah elemen maksimum).
Contoh :
Terdapat struktur data array bertipe integer, dengan 5 buah elemen
didalamnya.
Indeks = 0 Indeks = 1 Indeks = 2 Indeks = 3 Indeks = 4
Nilai = 10 Nilai = 20 Nilai = 30 Nilai = 40 Nilai = 50
Pada tabel diatas terdapat 2 buah penamaan, indeks dan nilai.
Indeks adalah sebuah nilai yang menjadi identitas dari masing – masing
elemen data dari sebuah struktur array. Nilai adalah nilai nyata yang
tersimpan pada setiap elemen pada indeks tertentu dari sebuah struktur array.
Hal yang harus diperhatikan dalam menyimpan data pada elemen array adalah
kesamaan tipe data, karena tidak mungkin menyimpan data yang berbeda –
beda kedalam sebuah struktur array.
Pendeklarasian Array
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 52 dari 77
Buku Informasi Versi: 01-09-2007
53. Materi Pelatihan Berbasis Kompetensi Kode Modul
Sektor Telematika Sub Sektor Programmer Komputer TIK.PR02.001.01
Pendeklarasian array tidak bedanya dengan pendeklarasian variabel biasa,
terdapat aturan – aturan penamaan yang sama persis dengan aturan
penamaan variabel. Perbedaannya terletak pada :
- Saat pendeklarasian array, hendaknya menentukan tipe dari array
tersebut.
- Saat pendeklarasian array, hendaknya menentukan jumlah dari
elemen yang terkandung di dalam struktur array tersebut.
Dalam menentukan jumlah elemen dari array hendaknya diperhatikan dengan
baik, karena banyaknya elemen array berarti memesan sejumlah tempat di
memori komputer. Tipe data array dapat berupa tipe sederhana (integer, char,
double, boolean) ataupun tipe terstruktur (record).
Contoh :
int nilai[10];
Perintah diatas akan memberikan instruksi untuk memesan 10 tempat di
memori komputer bertipe integer. Variabel array nilai memiliki indeks mulai
dari 0 hingga 9.
Contoh lain :
char nama[100], double nilai_ujian[100];
Mengakses Elemen Array
Setelah struktut array dideklarasikan, tiba saatnya untuk mengakses masing –
masing elemen dari struktur array tersebut. Cara pengaksesannya sangat
mudah dan hampir sama dengan proses pemberian nilai kepada sebuah
variabel. Hanya disini yang harus diperhatikan adalah indeks setiap elemen
array, karena kesalahan yang timbul akibat kesalahan pemberian indeks pada
array akan mengakibatkan data dikirim pada tempat yang salah.
Judul Modul: Membuat Algoritma Pemrograman Dasar
Halaman: 53 dari 77
Buku Informasi Versi: 01-09-2007