BAB I
PENDAHULUAN
A. DESKRIPSI
B. PRASYARAT
Untuk mempelajari modul ini, maka standar kompetensi yang harus dikuasai
sebelumnya adalah Dasar Kompetensi Kejuruan pada bidang studi keahlian
Teknologi Informasi, Program Studi Keahlian Teknik Komputer dan Informatika,
Kompetensi Keahlian Rekayasa Perangkat Lunak (kode 070), diantaranya:
1. Melakukan Instalasi system Operasi Dasar beserta seluruh
kompetensi dasar (2.1-2.4);
2. Menerapkan keselamatan, kesehatan kerja, dan lingkungan hidup
(K3LH) beserta seluruh kompetensi dasar (3.1 – 3.4);
3. Mengoperasikan sistem operasi berbasis GUI beserta seluruh
kompetensi dasar (4.1 – 4.5);
4. Instalasi perangkat lunak beserta seluruh kompetensi dasar
(5.1 – 5.3).
D. TUJUAN AKHIR
Setelah mempelajari modul ini, peserta didik diharapkan untuk dapat :
1. Menjelaskan pengertian algoritma
2. Menggunakan notasi algoritma
3. Membuat algoritma untuk pemecahan suatu masalah
4. Membuat struktur data
E. KOMPETENSI
Uraian kompetensi yang akan dipelajari pada modul ini :
1. Pengertian algoritma
2. Notasi algoritma deskriptif, flowchart, pseudocode
3. Tipe data, identifier,ekspresi
4. Struktur data
F. CEK KEMAMPUAN
Soal Teori ( Pilih jawaban yang dianggap benar)
BAB II
PEMBELAJARAN
A. RENCANA BELAJAR
Peserta belajar mengikuti arahan dari widyaiswara/instruktur dan didasarkan
pada modul yang ada pada peserta diklat.
B. KEGIATAN BELAJAR
a. Tujuan pembelajaran :
Setelah mempelajari modul ini, peseta didik diharapkan untuk dapat :
b. Uraian materi
Modul ini berisi materi tentang algoritma pemrograman meliputi
pengertian algoritma, penggunaan notasi algoritma berupa deskriptif,
flowchart, dan psudocode, tipe data, identifier, ekspresi, dan struktur data
CAKUPAN MATERI:
PENGERTIAN ALGORITMA
NOTASI ALGORITMA
TIPE DATA DAN IDENTIFIER
EKSPRESI
FLOWCHART
STRUKTUR DATA
CONTOH KASUS
A. Pengertian Algoritma
Para ahli bahasa berusaha menemukan asal kata algoritma namun hasilnya
kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata
tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far
Muhammad Ibnu Musa Al-Khuwarizmi. Kata Al-Khuwarizmi diadopsi menjadi
Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala
yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and
reduction). Perubahan kata dari Algorism menjadi Algorithm muncul karena kata
Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubah
menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang
biasa, maka lambat laun kata Algorithm berangsur-angsur dipakai sebagai metode
perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya.
Dalam Bahasa Indonesia, kata Algorithm diserap menjadi Algoritma.
Pengertian Algoritma adalah urutan langkah-langkah penyelesaian masalah
yang disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam
Algoritma. Langkah-langkah dalam Algoritma harus logis dan harus dapat
ditentukan bernilai salah atau benar.
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang
ilmu komputer yang dideskripsikan dalam terminologi algoritma. Namun, jangan
beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan
sehari-haripun banyak terdapat proses yang dinyatakan dalam suatu algoritma.
Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu resep juga
dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan langkah-
langkah membuat masakan. Bila langkah-langkahnya tidak logis, tidak dapat
dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan
akan membaca satu per satu langkah-langkah pembuatannya lalu mengerjakan
proses sesuai yang dibaca. Secara umum, pihak (benda) yang mengerjakan proses
disebut pemroses (processor). Pemroses tersebut dapat berupa manusia,
komputer, robot atau alat elektronik lainnya. Pemroses melakukan suatu proses
dengan melaksanakan atau “mengeksekusi” algoritma yang menjabarkan proses
B. Notasi Algoritma
Notasi Algoritma dapat diterjemahkan ke dalam berbagai bahasa
pemrograman. Analoginya sama dengan resep membuat kue. Sebuah resep dapat
ditulis dalam bahasa apapun. Bahasa Jepang, Inggris, Perancis, Indonesia, dan lain
sebagainya. Apapun bahasanya, kue yang dihasilkan tetap sama asalkan semua
aturan pada resep diikuti. Hal ini terjadi karena setiap juru masak (sebagai
pemroses) dapat melakukan operasi dasar yang sama, seperti mengocok telur,
menimbang berat gula, dan lain sebagainya.
Demikian juga halnya dengan komputer. Meskipun setiap komputer berbeda
teknologinya, tetapi secara umum semua komputer dapat melakukan operasi-
operasi dasar dalam pemrograman seperti operasi pembacaan data, operasi
perbandingan, operasi aritmatika, dan sebagainya. Perkembangan teknologi
komputer tidak mengubah operasi-operasi dasar itu, yang berubah hanyalah
kecepatan, biaya, dan tingkat ketelitian. Pada sisi lain setiap program dalam bahasa
tingkat tinggi selalu diterjemahkan kedalam bahasa mesin sebelum akhirnya
dikerjakan oleh CPU. Setiap instruksi dalam bahasa mesin menyajikan operasi
dasar yang sesuai, dan menghasilkan efek netto yang sama pada setiap komputer.
Dwi Wahyu Widiastuti-Dep. Elektronika dan Informatika P4TK BMTI 8
Algoritma Pemrograman
Contoh :
Algoritma Kelulusan_siswa
Diberikan nama dan nilai siswa, jika nilai tersebut lebih besar atau
sama dengan 60 maka siswa tersebut dinyatakan lulus jika nilai lebih
kecil dari 60 maka dinyatakan tidak lulus.
3. Pseudocode
Pseudo berarti imitasi dan code berarti kode yang dihubungkan
dengan instruksi yang ditulis dalam bahasa komputer (kode bahasa
pemrograman). Apabila diterjemahkan secara bebas, maka
Contoh:
2. Real
Merupakan tipe data bilangan pecahan. Semua bilangan yang
mengandung tanda desimal tergolong dalam tipe ini. Tanda desimal yang
dipakai adalah tanda titik, bukan tanda koma. Sebagai contohnya, nilai
0,5 (nol koma lima) ditulis menjadi 0.5. Tipe ini juga mendukung
penulisan dalam bentuk ilmiah, misalnya 2.64E-2 artinya 2.64 x 10-2.
3. Char
Merupakan tipe data karakter. Semua data yang hanya terdiri dari 1
karakter tergolong dalam tipe ini. Misalnya data jenis kelamin yang hanya
diisikan huruf L atau P. Penulisan data tipe char harus diapit oleh tanda
petik tunggal. Karakter-karakter yang diperbolehkan terdefinisi dalam
tabel ASCII.
4. String
Merupakan tipe data kalimat. Semua data yang terdiri dari 1 karakter
atau lebih dapat digolongkan ke dalam tipe ini. Syaratnya sama dengan
tipe char, yaitu harus diapit oleh tanda petik tunggal.
5. Boolean
Merupakan tipe data yang hanya mempunyai nilai TRUE atau FALSE.
Penulisan TRUE ataupun FALSE tidak membedakan huruf kapital
ataupun non-kapital. Hanya saja penulisannya tidak boleh disingkat
menjadi huruf T atau huruf F saja.
D. Ekspresi
Ekspresi adalah serangkaian perhitungan nilai yang menghasilkan suatu nilai
yang diinginkan. Ekspresi terdiri dari operand dan operator. Operand adalah nilai-
nilai yang akan dihitung. Operator adalah lambang operasi yang dipakai dalam
perhitungan.
Contoh: 6 + 3, angka 6 dan 3 adalah operand, sedangkan tanda + merupakan
operator. Operand dapat berupa tetapan (konstanta), peubah (variabel), atau hasil
dari suatu fungsi. Operator dapat berupa operator unary, yaitu operator yang hanya
memerlukan 1 operand, dan operator binary, yaitu operator yang memerlukan 2
operand.
Beberapa jenis operator yang dipakai dalam algoritma adalah:
1. operator aritmatika
2. operator perbandingan
Keterangan:
1. perbandingan char mengacu pada urutan karakter dalam tabel
ASCII.
4. operator logika
Lambang Jenis Tipe Tipe Tipe Hasil
Operator Operand1 Operand2
not Unary Boolean Boolean not
and, or, xor Binary Boolean Boolean Boolean
a not a
True False
False True
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
E. Flowchart
Flowchart merupakan cara penyajian dari suatu algoritma. Ada 2 macam
Flowchart yaitu:
2. Processing Symbols
F. Struktur Data
1) Struktur Data
a. Kelompok item data yang terorganisasi yang dianggap sebagai
suatu unit
b. Disebut juga sebagai jenis data kompleks (complex data type) atau
data aggregates
c. Beberapa struktur data :
1. Array (larik)
2. String
3. Record
4. List (daftar)
5. Tree
2) Array (Larik)
a. Set item data yang disusun secara baik menjadi rangkaian dan
diacu atau ditunjuk oleh satu identifier
b. Contoh : Nilai = (56 42 89 65 48)
c. Item data individual dalam array bisa ditunjuk secara terpisah
dengan menyatakan posisinya dalam array itu
1. Nilai(1) menunjuk 56
2. Nilai(2) menunjuk 42
d. Bilangan yang ditulis dalam tanda kurung menandakan posisi item
individual dalam array (disebut juga subscript / indeks)
e. Variabel bisa digunakan sebagai subscript, misalnya Nilai(i).
1. Jika i = 2 maka menunjuk ke Nilai(2) yaitu 42
2. Jika i = 4 maka menunjuk ke Nilai(4) yaitu 65
f. Item data individual dalam suatu array sering disebut elemen
g. Matriks : Array yang hanya berisi bilangan dan tidak ada data
alfabetisnya
h. Klasifikasi Array
1. Array 1 dimensi
2. Array multi dimensi
3) Array 1 Dimensi
Deklarasi Array 1 dimensi
Nilai : array [1..5] of integer
A : array [1..4] of real
5) Penanganan Array
Metode dasar penanganan array :
G. Contoh Kasus
Berikut ini adalah beberapa contoh algoritma untuk pemecahan masalah
dalam bentuk flowchart.
Contoh Kasus 1: Algoritma untuk menghitung keliling persegi panjang.
Langkah pengerjaannya adalah sebagai berikut.
1. Memasukkan nilai panjang dan lebar
2. Menghitung keliling persegi panjang dengan rumus, keliling= 2 *
(panjang + lebar)
3. Mencetak nilai keliling
START
INPUT
NAMA,
PENJUALAN
KOMISI=0.1 * PENJUALAN
OUTPUT NAMA,
PENJUALAN
END
Rangkuman
1. Algoritma adalah urutan langkah-langkah penyelesaian masalah yang
disusun secara sistematis dan logis”. Kata Logis merupakan kata kunci
dalam Algoritma. Langkah-langkah dalam Algoritma harus logis dan harus
dapat ditentukan bernilai salah atau benar.
2. Notasi Algoritma dapat diterjemahkan ke dalam berbagai bahasa
pemrograman.
3. Jenis data terdiri dari tipe data sederhana dan data structures
4. Ekspresi adalah serangkaian perhitungan nilai yang menghasilkan suatu
nilai yang diinginkan.
5. Flowchart yaitu bagan yang mempunyai arus yang menggambarkan
langkah-langkah penyelesaian suatu masalah. Flowchart merupakan cara
penyajian dari suatu algoritma.
Evaluasi
5. Buatlah algoritma untuk meminta input n buah data nilai siswa, kemudian
menghitung banyaknya siswa yang lulus. Syarat untuk lulus adalah nilai
yang diperoleh minimal 60.
DAFTAR PUSTAKA