Anda di halaman 1dari 22

MATERI PEMBELAJARAN

Kompetensi Dasar
3.1. Menerapkan Alur Logika Pemrograman Komputer
4.1. Membuat Alur Logika Pemrograman Komputer
Materi Pokok :
1. Algoritma
2. Pemrograman
3. Flowchart
Program Keahlian : Teknik Komputer Jaringan Alokasi Waktu : 12 Jam Pelajaran
Kelas : X (Sepuluh) Semester : Ganjil

A. Tujuan Pembelajaran
Setelah mempelajari materi ini peserta didik diharapkan untuk :
1. Mampu menjelaskan algortima pemrograman
2. Mampu menerapkan algoritma pemrograman dalam menyelesaikan suatu
permasalahan.
3. Mempu menjelaskan algortima pemrograman dengan menggunakan flowchart
4. Mampu menerapkan flowchart dalam menyelesaikan suatu masalah
5. Mampu membuat alur pemrograman menggunakan teks (algoritma)
6. Mampu membuat program menggunakan simbol flowchart.
B. Bahan belajar
1. Internet
2. Rangkuman materi
3. Lembar Kerja Siswa Pemrograman Dasar Semester 1
4. Buku Belajar Dasar algoritma dan Pemrograman C++ ( deepublish).
5. Buku Algortima dan pemrograman (penerbit andi) Lamhot Sitorus.
C. Penilaian
1. Tes tertulis (20%)
2. Tanya Jawab (20%)
3. Praktikum Lab. (40%)
4. PTS (10%)
5. PAS (10%)
D. Pembahasan Materi (Pertemuan 1)
1. Mengenal dan Memahami Konsep Algoritma
Pernahkah anda mengenal istilah algoritma ?. Bagaimana bentuk sebuah algoritma
itu ? Untuk apa algoritma itu ?. Untuk menjawab pertanyaan tersebut coba
perhatikan ilustrasi berikut ini.

Page 1 of 22
Kasus 1
Ani akan melakukan installasi driver printer pada komputer yang memiliki sistem
operasi windows 7 miliknya. Karena Ani hanya seorang siswa SMA maka dia
melihat petunjuk cara melakukan installasi printer berikut ini.

Kasus 2
Ibu Aminah adalah seorang ibu rumah tangga, yang tinggal di dekat pasar. Suatu hari
Ibu Aminah pergi kepasar dan melihat seseorang berjualan puding yang sangat ramai.
Sesampainya dirumah Ibu aminah berkeinginan untuk ikut berjualan puding. Namun,
beliau belum pernah membuat puding sama sekali. Karena beliau memiliki
smartphone maka Ibu Aminah browsing untuk mencari resep membuat puding dan
pada akhirnya dapat resep seperti berikut ini.

Page 2 of 22
Dari kedua ilustrasi tersebut diatas dapatkah anda simpulkan apa yang dimaksut
dengan algortima ?. Jika belum maka coba anda kembali memahami kedua kasus
tersebut. Kedua kasus tersebut memiliki sebuah tujuan yaitu menyelesaikan masalah
dalam setiap permasalahan yang dihadapi. Misalkan Ani seorang anak yang hanya
bersekolah SMA ingin melakukan installasi driver printer ke komputer miliknya agar
dapat digunakan, kasus kedua Ibu Aminah ingin berjualan puding maka beliau mencari
resep di internet. Kedua kasus tersebut juga memberkan gambaran yang sangat jelas
tentang langkah – langkah yang nantinya akan menyelesaikan sebuah permasalahan
yang dihadapi oleh kedua orang yang berbeda. Hal inilah yang dimaksut dengan
algoritma.
1.1. Mengenal Algoritma
Dilihat dari istilahnya algoritma, berasal dari nama seorang
matematikawan muslim bernama Abu Ja‟far Muhammad
Ibnu Musa Al-Khuwarizmi (780 M-850), yang oleh orang
barat menyebut Al- Khuwarizm sebagai Algorism, yang
diartikan proses menghitung dengan angka arab. Salah satu
karya beliau yang monumental adalah buku berjudul Kitab Al Jabar Wal-
Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of
restoration and reduction), yang menjadi cikal bakal istilah “Aljabar” (Algebra)
yang dipakai hingga sekarang ini. Seiring dengan perkembangan jaman isitilah
„Algorism‟ berubah menjadi algorithm yang kemudian diartikan sebagai
metode perhitungan (komputasi) secara umum. Dalam bahasa Indonesia, kata
algorithm diserap menjadi algoritma.
Menurut definisi, algoritma adalah urutan langkah-langkah penyelesaian
masalah yang disusun secara sistematis dan logis. Dalam beberapa konteks,
algoritma dapat diartikan urutan langkah-langkah yang spesifik (tertentu) untuk
melakukan suatu pekerjaan. Jadi algoritma tidak hanya diartikan sebatas pada
perhitungan dengan komputer saja tapi dapat diartikan lebih luas dalam
kehidupan sehari-hari. Resep masakan adalah contoh algoritma yang ada di
kehidupan sehari-hari. Petunjuk pemasangan AC, petunjuk perakitan
komputer, petunjuk installasi software, panduan pengisian token listrik, Jadwal
acara kegiatan adalah berbagai bentuk algoritma yang ada di kehidupan sehari-
hari.
Sebuah algoritma harus disusun secara sistematis dan logis, logis disini bukan
berarti hanya jelas saja, namun harus sudah diuji kebenarannya. Artinya sebuah
algortima yang anda susun harus memiliki hasil akhir yang berupa sebuah
kebenaran. Sebuah algoritma yang mendapatkan hasil salah maka langkah –
langkah yang anda susun tidak bisa dikatakan sebagai sebuah algoritma.

Page 3 of 22
Kemudian sebuah algoritma tidak boleh membuat sebuah kerancuan (ambigu)
maknanya sebuah langkah yang anda tuliskan harus benar – benar jelas. Tidak
boleh memiliki makna ganda atau kias. Misalnya tuangkan garam secukupnya,
perhatikan kata secukupnya disini memiliki makna sangat banyak. Secukupnya
disini dapat berarti satu sendok teh, bahkan 1 sendok makan, hal ini juga harus
dihindari dalam penulisan algoritma.
Sebuah algortima disusun juga harus menggunakan prinsip dasar sistematis
artinya sebuah algoritma disusun dengan urutan yang tepat dan tidak terbolak
balik. Misalkan untuk mencetak sebuah dokumen dengan menggunakan printer
coba anda ikuti petunjuk berikut ini :
1) Siapkan dokumen yang akan dicetak
2) Pastikan driver printer sudah diinstall di komputer
3) Cetak dokumen dengan menekan tombol printer.
Bayangkan jika petunjuk diatas kita balik menjadi seperti dibawah ini.
1) Pastikan driber printer sudah diinstall di komputer
2) Cetak dokumen dengan menekan tombol printer.
3) Siapkan dokumen yang akan dicetak
Pasti anda akan bertanya dokumen apa yang dicetak pada tahapan kedua ?
tahapan seperti ini artinya tidak boleh disebut sebuah algortima karena tidak
akan memecahkan sebuah permasalahan yang ada.
1.2. Struktur Dasar Algortima
Inti dari sebuah algortima adalah memecahkan sebuah permasalahan. Untuk
memecahkan sebuah permasalahan maka diperlukan sebuah input atau
permaasalahan yang ada kemudian difikirkan bagaimana proses memecahkan
sebuah permasalahan yang sudah didapatkan untuk selanjutnya mendapatkan
output sebuah hasil dari pemecahan permasalahan tersebut.
Secara umum struktur algortima terdiri dari 3 bagian sebagai berikut ini :
1) Nama / Judul Algoritma
Nama Algoritma memberikan gambaran secara singkat apa tujuan dari
Algoritma, misalkan nama resep masakan, petunjuk melakukan
sesuatu, jadwal kegiatan, langkah-langkah penyelesaian sebuah
masalah, dan sebagainya. Pemberian nama Algoritma disarankan
singkat dan jelas, namun sudah mewakili maksud dari algoritma. Dalam
Algoritma komputer biasanya nama algoritma dituliskan tanpa
menggunakan spasi, misalkan Algoritma VolumeBalok atau Algoritma
Volume_Balok

Page 4 of 22
2) Bagian Deklarasi
Bagian deklarasi merupakan tahap persiapan dari algoritma. Pada
bagian ini dijelaskan kebutuhan agar algoritma dapat berjalan. Istilah
lainnya di sinilah alat dan bahan didefinisikan. Dalam algoritma
pemrograman, bagian deklarasi menjelaskan input (masukan) apa saja
yang akan diproses oleh algoritma termasuk jenis data input (tipe data),
juga output apa yang akan dihasilkan serta semua hal yang akan dipakai
dalam algoritma. Yang didefiniskan dalam algoritma ini termasuk
variabel, tipe data, konstanta, nama prosedur, tipe, dan fungsi yang akan
dipelajari di materi selanjutnya.
3) Bagian Deskripsi
Pada bagian ini dijelaskan serangkaian langkah-langkah (instruksi) atau
pernyataan (statement) untuk memproses alat dan bahan atau inputan
untuk menghasilkan output sesuai yang diharapkan. Langkah-langkah
dalam algoritma dituliskan dari atas ke bawah. Urutan penulisan
menentukan urutan perintah

Untuk lebih dalam memahami maka silahkan anda perhatikan contoh berikut
ini :

Page 5 of 22
Lembar Kerja Siswa 1

Dengan menggunakan bantuan media internet, buku, atau yang lainnya coba anda kerjakan
beberapa soal berikut ini. Selanjutnya diskusikan jawaban yang kamu dapatkan dengan teman
sekelas dan instruktur yang ada didalam kelas.

1. Apa yang dimaksut dengan algoritma ?


...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
2. Apa yang dimaksut dengan logis dalam menyusun sebuah algoritma ?
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
3. Apa yang dimaksut dengan sistematis dalam menyusun sebuah algoritma ?
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
4. Diketahui sebuah algortima seperti dibawah ini, lakukan identifikasi struktur dasar
algoritmanya, dan perbaiki apabila algoritma tersebut belum memiliki struktur algortima yang
lengkap !

Page 6 of 22
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
5. Buatlah sebuah algoritma tentang menyalakan komputer sehingga komputer tersebut siap
untuk digunakan.
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................

E. Kesimpulan
Dari pembahasan diatas buatlah sebuah kesimpulan dengan mencatatkannya dibawah ini.
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................

Page 7 of 22
F. Uji Kompetensi Siswa
Berilah tanda silang pada jawaban A, B, C, D, dan E pada jawaban yang dianggap paling
benar.
1. Berikut ini adalah pernyataan yang benar mengenai algoritma, kecuali ....
A. Algoritma merupakan prosedur pemecahan masalah
B. Algoritma berisi rangkaian langkah-langkah kerja
C. Algoritma tidak harus menghasilkan output
D. Algoritma pasti memberikan hasil yang sama untuk inputan yang sama
E. Algoritma harus terbatas langkahnya
2. Dalam sebuah algoritma, langkah-langkah tidak boleh ambigu. Manakah di antara
langkahlangkah dalam sebuah algoritma berikut yang ambigu?
A. “Masukkan satu gelas air putih”
B. “Tuangkan adonan puding ke dalam cetakan”
C. “Jika kue sudah matang, keluarkan kue dari oven”
D. “Kukus adonan selama 20 menit”
E. “Sajikan selagi panas”
3. Bagian persiapan dari sebuah algoritma disebut dengan bagian ....
A. Deskripsi
B. Deklarasi
C. Header
D. Preparation
E. Prosedur
4. Istilah-istilah yang biasanya muncul pada bagian deskripsi algoritma yang berkenaan
installasi software adalah sebagai berikut, kecuali .........
A. Tunggu hingga proses installasi selesai
B. Tekan Tombol Next
C. Masukkan Serial Number
D. Klik ganda ikon
E. Matikan komputer
5. Berikut ini alasan mengapa langkah-langkah algoritma tidak boleh ambigu?
a. Agar algoritma memberikan output yang sama untuk input yang sama
b. Agar algoritma dapat dimengerti oleh pengguna
c. Agar langkah-langkah algoritma menjadi terbatas atau mempunyai titik henti
Manakah di antara pernyataan dia tas yang benar?
A. A saja D. A dan C saja
B. A dan B saja E. Tidak ada yang benar
C. Semua benar

Page 8 of 22
A. Pembahasan Materi (Pertemuan 2)
2. Mempresentasikan Algoritma dengan menggunakan bahasa sehari – hari
Algortima adalah sebuah susunan sebuah langkah untuk menyelesaikan sebuah
masalah. Langkah – langkah yang digunakan untuk menyelesaikan masalah tersebut
dapat dipresentasikan melalui beberapa cara. Pada pembahasan kali ini kita akan
membahas tentang mempresentasikan algoritma dengan menggunakan bahasa sehari
– hari.
Coba anda perhatikan petunjuk melakukan konfigurasi dan pemasangan Access Point
TP Link WA901ND

Page 9 of 22
Untuk lebih jelas silahkan anda download pada link http://static.tp-
link.com/res/down/doc/TL-WA901ND(US)_V4_QIG.pdf atau anda dapat membaca
pada folder yang diikutsertakan dalam pelatihan ini.
Secara garis besar, algorit,a dapat disajikan atau dipresentasikan dengan menggunakan
3 cara antara lain :
1) Menggunakan bahasa natural (Bahasa Sehari – Hari)
2) Menggunakan Pseudocode
3) Menggunakan Flowchart
Secara umum bahasa natural atau bahasa sehari – hari sering digunakan dalam
membuat sebuah algortima. Setiap hari kita akan dihadapkan dengan beberapa urutan
langkah yang logis untuk mencapai sebuah tujuan. Itulah yang dimaksut dengn
algoritma. Misalkan saja penggunaan handphone, agar sebuah handphone dapat
dipasarkan diindonesia maka secata otomatis akan diberikan sebuah petunjuk tentang
penggunaan handphone tersebut dalam kardusnya.
Secara resmi disetiap kardus sebuah
handphone memiliki buku panduan dalam dua
buah bahasa yang pertama adalah dalam
bahasa inggris (Quick Start Guide) dan yang
satunya dalam bahasa indonesia (Panduan
Singkat).
Bayangkan saja jika product seperti pada
gambar disamping dijual secara bebas
diindonesia tanpa dilengkapi dengan buku
panduan yang menggunakan bahasa indonesia apa yang akan terjadi ?. Konsumen
yang membeli product tersebut akan merasakan sangat kesulitan menggunakan
perangkat tersebut. Khususnya customer yang tidak dapat menggunakan bahasa
inggris. Namun, jika anda dinegara lain maka jangan harap anda menemukan buku
panduan dalam bahasa indonesia. Dinegara tersebut dapat dipastikan bahwa akan
terdapat buku manual dalam bahasa inggris dan bahasa negara di mana barang tersebut
dijual.
Penyajian algoritma dengan menggunakan bahasa natural memang sangat banyak kita
jumpai dalam kehidupan sehari – hari. Namun perlu anda ingat menyajikan algoritma
dengan cara ini sangat efektif jika untuk permasalahan yang singkat dan kecil namun
jika anda akan menyajikan sebuah algortima sebuah program yang besar maka bukan
tidak mungkin anda akan menghabiskan banyak kertas untuk mencetaknya dan
akhirnya tidak efektif.

Page 10 of 22
Contoh 1

Contoh 2

Dari kedua contoh diatas dapat diambil sebuah kesimpulan jika untuk membaut sebuah
algoritma dengan mengguankan bahasa natural kita masih dapat diperbolehkan untuk
menggunakan beberapa simbol matematika.

3. Menyusun sebuah algoritma


Dari beberapa contoh yang sudah disajikan diatas apakah ada sebuah aturan bagaimana
membuat atau menyusun sebuah algortima ?. Sejauh ini, tidak ada sebuah standarisasi
yang mengatur tentang menyusun sebuah algortima. Secara prinsip, anda memiliki
kebebasan untuk menyusun bentuk sebuah algortima.

Page 11 of 22
Namun, anda diberikan beberapa hal yang perlu anda perhatikan dalam menyusun
sebuah algoritma. Menurut knuth (1973, hal. 4) dan juga horowitz dkk. (1999, hal. 1)
ada lima ciri penting yang harus dimiliki sebuah algoritma yaitu :
 Finiteness
Algoritma yang baik haruslah mempunyai langkah-langkah terbatas, yang
berakhir pada suatu titik di mana algoritma itu akan berhenti dan menghasilkan
suatu output. Algoritma tidak boleh berjalan terus –menerus tanpa titik henti,
hingga menyebabkan hang atau not responding jika diterapkan pada komputer.
Ketika sebuah algoritma berjalan terus menerus (infinite), maka ini
mengindikasikan ada kesalahan yang dibuat oleh programmer dalam
mengembangkan algoritma.
 Definiteness
Makna dari langkah logis pada definisi algoritma terdahulu tercermin dari
langkah-langkah yang pasti, tidak ambigu atau bermakna ganda. Suatu
program harus mempunyai arah dan tujuan yang jelas ,kapan mulai dan kapan
berakhir. Dalam menyusun langkah-langkah dalam algoritma perlu dihindari
kata-kata seperti secukupnya, beberapa, sesuatu, sebentar, lama, atau kata lain
yang tidak terukur dengan pasti. Pemberian nomor pada algoritma dapat
membantu pengguna mengikuti setiap langkah dengan pasti hingga mencapai
akhir dari algoritma, yaitu solusi dari permasalahan.
 Masukan
Algoritma memiliki nol input atau lebih dari pengguna. Setiap algoritma pasti
memiliki input. Yang dimaksud dengan nol input dari pengguna adalah bahwa
algoritma tidak mendapatkan masukan dari pengguna, tapi semua data inputan
yang digunakan algoritma tidak dari pengguna secara langsung, namun semua
data yang akan diproses sudah dideklarasikan oleh algoritma terlebih dahulu.
 Keluaran
Algoritma minimal harus memiliki 1 output. Tujuan dari algoritma adalah
memberikan penyelesaian dari suatu permasalahan dengan langkah-langkah
tertentu. Penyelesaian itulah output dari algoritma yang dimaksud. Output
dapat berupa apa saja, teks, file, video, suara, dan lain-lain atau suatu nilai yang
disimpan untuk digunakan algoritma lain atau disimpan di basis data.
 Efektifitas
Program menghasilkan output yang benar, itu wajib. Tapi bagaimna jika output
yang benar itu dilakukan dengan waktu yang lama padahal ada algoritma lain
yang lebih cepat? Hal ini menunjukkan bahwa setiap algoritma, khususnya jika
sudah diterapkan pada pemrograman, mempunyai waktu eksekusi (running
time). Algoritma disebut efisien jika untuk mendapatkan suatu solusi tidak

Page 12 of 22
memerlukan memori yang banyak, proses yang berbelit-belit dan tidak perlu.
Jika algoritma terlalu banyak melakukan hal-hal yang tidak perlu akan
menyebabkan waktu eksekusi menjadi lebih lama.
B. Kesimpulan
Dari pembahasan materi diatas maka coba anda buat sebuah kesimpulan yang selanjutnya
diskusikan dengan teman – temanmu yang ada didalam kelas
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
.................................................................................................................................................
C. Ujian Kompetensi
Berikan tanda silang (X) pada jawaban A, B, C, D dan E yang kamu anggap paling benar !
1. Berikut ini pertanyaan yang benar mengenai penyajian algoritma dengan bahasa
natural, kecuali.....
A. Penyajiannya singkat dan efisien
B. Mengunakan bahasa sehari-hari pembuat program atau pengguna
C. Kurang universal
D. Menyatakan langkah-langkah dengan kalimat deskriptif
E. Dapat dimengerti oleh pengguna algoritma
2. Berikut ini pernyataan yang benar mengenai input dan output dalam algoritma, kecuali
...
A. Algoritma harus memiliki minimal 1 output
B. Algoritma bisa memiliki nol input dari pengguna
C. Algoritma bisa memiliki input dari algoritma itu sendiri
D. Algoritma boleh tidak memiliki output
E. Algoritma mengolah input menjadi output
3. Sebuah algoritma dijalankan melalui sekian langkah dengan kriteria-kriteria tertentu.
Namun ketika ditelusuri, algoritma itu akan berulang ke satu langkah secara terus
menerus sehingga tidak ada jaminan algoritma tersebut berhenti. Ini artinya algoritma
tidak memenuhi sifat...
A. define C. efisien E. solutif
B. finite D. efektif

Page 13 of 22
Perhatikan tabel berikut ini untuk mengerjakan soal no 4 dan 5

4. Tentukan output dari algoritma di atas jika dimasukkan nilai a adalah 23 dan b adalah
4 ....
A. 1 C. 3 E. 5
B. 2 D. 4
5. Jika pada baris keempat diganti menjadi
Jika a lebih kecil b maka lanjut ke langkah 4, jika tidak lanjut ke langkah 5
Dan nilai a yang dimasukkan adalah 8 dan b adalah 10, berapa outputnya?
A. -2
B. 0
C. 2
D. 8
E. Output tidak didefinisikan

Page 14 of 22
Lembar Kerja Siswa 2

1. Cobalah anda amati prosedur kerja cara melakukan konfigurasi Access Point TP Link
diatas dapatkah anda menjelaskan beberapa pertanyaan berikut ini :
a. Bahasa apa yang dipakai dalam petunjuk diatas ?
b. Apa alasan sebuah petunjuk dibuat menjadi beberapa bahasa ?
c. Mengapa dalam sebuah petunjuk kerja terkadang disertai dengan gambar ?

......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
2. Menurut knuth (1973, hal. 4) dan juga horowitz dkk. (1999, hal. 1) ada lima ciri
penting yang harus dimiliki sebuah algoritma.
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
3. Buatlah sebuah algortima tentang “Merakit Sebuah Personal Komputer” dengan
menggunakan bahasa natural !
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
4. Manurut anda apakah pernyataan berikut ini merupakan algortima ? apa alasannya ?
a. Nyalakan Api kompor dan taruh alat penggorengan diatas kompor
b. Tuangkan minyak ke alat penggorengan dan tunggu beberapa saat
c. Masukkan bahan – bahan yang akan digoreng ke alat penggorengan
d. Gorenglah sampai tercium aroma yang harum
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................

Page 15 of 22
5. Perhatikan algoritma berikut ini
{program ini menghitung selisih volume dua balok}
Input: panjang, lebar, dan tinggi kedua balok dalam cm
Output: Selisih volume harus bilangan positif
Langkah-langkah
1) Baca panjang, lebar, dan tinggi balok pertama
2) Baca panjang, lebar, dan tinggi balok kedua
3) Hitung volume balok pertama dengan rumus panjang x lebar x tinggi
4) Hitung Volume balok kedua dengan rumus panjang x lebar x tinggi
5) Kurangi volume balok pertama dengan balok kedua
6) Tuliskan hasil pengurangan pada langkah 6
Jawab Pertanyaan berikut
A. Apakah algoritma tersebut sudah memenuhi kriteria jelas (define), tidak
ambigu?
B. Apakah algoritma di atas menghasilkan output yang benar? Jelaskan pendapat
kalian.
C. Apa saran kalian untuk memperbaiki algoritma tersebut?
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................

Page 16 of 22
A. Pembahasan Materi (pertemuan 3)
4. Menyajikan Algoritma dengan menggunakan flowchart
Setelah kita memahami tentang menyajikan algoritma dengan menggunakan bahasa
natural atau bahasa sehari – hari maka pembahasan kali ini kita akan mengajak anda
semua untuk menyajikan sebuah algortima dengan menggunakan flowchart.
Flowchart adalah bentuk sebuah diagram yang digunakan untuk menyajikan sebuah
algoritma dengan menggunakan simbol – simbol khusus sesuai dengan fungsi dan
tujuannya. Menyajikan algortima dengan menggunakan flowchart adalah yang paling
banyak digunakan oleh para programer, mahasiswa ataupun siswa SMK yang sedang
belajar mata pelajaran pemrograman dasar.
Seperti yang sudah dibahas diatas untuk menyajikan algoritma dengan menggunakan
flowchart harus menggunakan simbol – simbol khusus. Berikut adalah simbol – simbol
yang digunakan untuk menyajikan data dalam bentuk flowchart :

 Untuk membuat suatu diagram alir, dapat menggunakan aplikasi Microsoft


Visio atau bahkan Microsoft Word (shapes) di lingkungan kerja Microsoft
Word.
 Atau dapat menggunakan aplikasi DIA yang diikutsertakan dalam folder
aplikasi pada dokumen ini.

Sebagai contoh coba anda perhatikan penjabaran berikut ini.

Page 17 of 22
Flowchart Menghitung Luas Lingkaran Flowchart Menghitung Volume balok

5. Struktur Dasar Algortima


Utnuk membuat sebuah algoritma dengan mengguankan flowchart maka perlu
mengenal struktur dasar algortima. Algortima memiliki tiga buah struktur dasar antara
lain yaitu :
1) Skuensial (Urutan)
2) Seleksi
3) Pengulangan
Untuk lebih memahami ketiga struktur algortima diatas maka coba anda perhatikan
penjabaran berikut ini.
 Skuensial (urutan)
Pada struktur ini, langkah – langkah yang dilakukan dalam algortima diproses
secara berurutan.

Page 18 of 22
 Struktur Seleksi
Struktur seleksi menyatakan pemilihan langkah yang didasarkan oleh suatu
kondisi (pengambilan keputusan), sehingga diamana dalam sebuah algoritma
nanti akan melibatkan dua buah alternatif pilihan yang mana yang akan
dikerjakan tergantung dari kondisi yang ada.

 Struktur Pengulangan
Pengulangan menyatakan suatu tindakan atau langkah yang dijalankan
beberapa kali. Sebagai contoh anda akan membuat sebuah program yang akan
menampilkan tentag “Selamat datang di C++” sebanyak 10 kali. Dengan
menggunakan struktur sekuensial maka anda dapat menuliskan
“cout<<”Selamat datang di C++”” sebanyak 10 kali. Bagaimana jika anda akan
menampilkan tulisan yang sama sebanyak 1.000.000 kali. Tentunya hal ini
tidak akan efisien. Dengan menggunaka struktur pengulangan cukup anda
sekali saja menuliskan apa yang akan dikeluarkan dan dilakukan kondisi
pengulangan. Hal ini akan sangat efektif daripada anda harus menggunakan
struktur skuensial bukan.
Struktur perulangan sendiri dibagi menjadi 2 bagian yaitu :
1. While ... Do ... (Ulangi Selama)
2. Do ... While ... (Ulangi Sampai)
Untuk menggambarkan dengan menggunakan flowchart maka perhatikan
gamba dibawah ini. Kemudian apa yang membedakan keduanya ?. Secara garis
besar kedua stuktur perulangan diatas memiliki fungsi yang sama yaitu
melakukan perulangan. Namun yang memberdakan terletak pada pengecekan
sebuah kondisinya.

Page 19 of 22
Jika pada While ..... Do ... inputan yang anda masukkan akan dilakukan
pengecekan, apakah sesuai kondisi yang anda masukkan jika tidak maka proses
perulangan tidak akan pernah dijalankan. Jika inputan yang anda masukkan
bernilai benar sesuai dengan kondisi yang ditetapkan maka proses akan
dilanjutkan atau dikerjakan.

Jika pada perulangan Do .... While sebuah proses akan dijalankan minimal
satu kali baru selanjutnya kondisinya akan dilakukan pengecekan. Jika
pengecekan tidak sesuai dengan kondisi yang dimasukkan maka proses tidak
akan dijalankan sedangkan jika kondisi benar maka proses akan dijalankan.

Dari ketiga struktur diatas semuanya memiliki fungsi masing – masing dan biasanya
tidak digunakan secara terpisah. Mereka semua saling melengkapi sesuai dengan
kebutuhan dari program atau algoritma yang akan dibentuk.

B. Kesimpulan
Dari beberapa contoh dan pembahasan diatas maka buatlah sebuah kesimpulan dan
presentasikan kesimpulan tersebut di depan kelas !
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................

Page 20 of 22
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
C. Uji Kompetensi
Jawablah pertanyaan dibawah ini dengan sangat jelas !
1. Buatlah flowchart untuk menentukan:
a. Luas lingkaran
b. Volume balok
c. Luas dan keliling persegi panjang
d. Rata-rata dari 3 buah bilangan real
2. Diketahui dua buah gelas dimana gelas A berisi kopi dan Gelas B berisi Teh,
Bagaimana cara menukar isi kedua gelas tersebut ?

Lembar Kerja Siswa 3

1. Buatlah flowchart untuk menentukan pilihan dari sistem berikut:


Jika pilihan = 1, maka sistem akan mengerjakan bilangan pertama ditambah bilangan
kedua, jika pilihan = 2, maka sistem akan mengerjakan bilangan pertama dikurangi
bilangan kedua, jika pilihan = 3, maka sistem akan mengerjakan bilangan pertama dibagi
bilangan kedua, selain piliha tersebut, sistem akan EXIT.
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................

2. Buatlah flowchart untuk menentukan bonus pegawai, berdasarkan ketentuan yang


diberikan oleh bagian personalia dan keuangan sebagai berikut : Pegawai perusahaan
digolongkan menjadi dua golongan, yaitu staf dan non staf. Staf akan mendapatkan bonus
sebesar 1 juta rupiah dengan syarat bahwa ia telah bekerja paling tidak 5 tahun dan
umurnya sudah mencapai 50 tahun; staf yang bekerja kurang dari 5 tahun dan berapapun
umurnya, hanya mendapat bonus sebesar Rp. 500.000. Pegawai non staf yang telah bekerja
lebih dari 5 tahun akan mendapat bonus sebesar Rp. 400.000 jika berumur lebih dari 50
tahun sedangkan pegawai non staf yang berumur kurang dari 50 tahun hanya mendapat
bonus Rp. 250.000. Pegawai staf yang umurnya kurang dari 50 tahun akan mendapat bonus
Rp. 300.000

Page 21 of 22
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
3. Buatlah sebuah algoritma dengan mengguankan flowchart untuk menentukan bilangan
terbesar dari dua bilangan X an Y.
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
4. Buatlah sebuah algortima dengan menggunakan flowchart untuk menampilkan 4 buah
tulisan “Selamat Belajar ” .
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
5. Buatlah sebuah algoritma dengan menggunakan flowchart untuk menghasilkan tampilan
berikut ini {1,4,9,16,25,36,49,64,81,100}.
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................
.............................................................................................................................................

Page 22 of 22

Anda mungkin juga menyukai