Anda di halaman 1dari 9

SUMBER BELAJAR PENUNJANG PLPG 2016

MATA PELAJARAN/PAKET KEAHLIAN


REKAYASA PERANGKAT LUNAK

BAB VIII
ALGORITMA & PEMROGRAMAN

H W Herwanto

KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN


DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN
2016
8
ALGORITMA DAN
PEMROGRAMAN
Kompetensi Dasar
 Mengenal algoritma pemrograman

Indikator
 Menjelaskan pengertian algoritma
 Mendeskripsikan unsur-unsur pada algoritma pemrograman
 Menjelaskan simbol-simbol untuk membuat diagram alir
 Menentukan tipe data (jenis data yang dapat diolah oleh komputer)
 Mengklasifikasikan permasalahan yang bisa diselesaikan dengan algoritma
pemrograman
 Menentukan cara penulisan algoritma

1
A.Materi
1.Algoritma
Secara umum algoritma dapat didefinisikan sebagai langkah-langkah yang digunakan
untuk memecahkan suatu masalah. Menurut KBBI (Kamus Besar Bahasa Indonesia),
Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah. Dalam
pemrograman komputer, algoritma dapat diartikan sebagai program komputer yang berupa
langkah-langkah logis untuk memecahkan suatu permasalahan tertentu.
Algoritma ditemukan oleh Muhammad Ibn Musa Al-Khawarizmi. Beliau adalah
seorang ilmuwan astronomi, matematika dan geografi yang menemukan teori mengenai
algoritma.

2.Variabel , Konstanta dan Tipe Data


Variabel adalah tempat untuk menyimpan nilai dimana nilai tersebut dapat dihapus
atau dipanggil kembali apabila dibutuhkan. Setiap variabel memiliki nama (identifier) dan
nilai. Perhatikan contoh berikut.
Nama = ”Gio”
Password = 123400
Pada contoh tersebut, nama dan password merupakan variabel. Sedangkan Gio dan
123400 adalah nilai variabel tersebut. Pemberian nama variabel harus mengikuti aturan
yang ditetapkan sesuai dengan bahasa pemrograman yang digunakan. Namun secara umum
ada aturan yang berlaku untuk bahasa pemrograman. Menurut Mulyanto(2008), aturan-
aturan penulisan variabel adalah sebagai berikut:
 Nama variabel harus diawali dengan huruf.
 Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan
karakter underscore (_).
 Nama variabel tidak boleh mengandung karakter-karakter khusus, seperti : .,+, -, *, /, <,
>, &, (, ) dan lain-lain.
 x Nama variabel tidak boleh menggunakan kata-kata kunci bahasa pemrograman

Konstanta

2
Konstanta adalah variabel yang nilainya bersifat tetap. Jadi konstanta juga
merupakan variabel, hanya saja berbeda pada nilai yang disimpan. Jika nilai data variabel
program tidak berubah-ubah, maka varibel tersebut lebih baik didefinisikan sebagai
konstanta. Nilai data dari konstanta diberikan langsung di bagian deklarasi konstanta.
Sedangkan variabel umumnya hanya ditentukan nama variabel dan tipe datanya tanpa
definisi nilai data.
Aturan penamaan variabel juga berlaku untuk penamaan konstanta. Begitu juga
dengan aturan penetapan tipe data. Contoh program perhitungan matematik dengan
menggunakan nilai pi (3.14159) seperti menghitung luas lingkaran. Dalam program tersebut
kemungkinan nilai phi muncul beberapa kali dengan nilai yang sama. Hal ini menjadikan phi
lebih cocok didefinisikan sebagai konstanta daripada variabel.

Tipe Data
Tipe data merupakan jenis data yang dapat diolah oleh komputer guna memenuhi
kebutuhan pemrograman komputer. penentuan tipe data sangat diperlukan dalam tahapan
awal pembuatan program. Ketepatan pemilihan tipe data pada variabel atau konstanta akan
sangat menentukan pemakaian sumberdaya komputer utamanya pengelolaan memori
komputer. Terdapat beberapa jenis tipe data, yaitu :

 Tipe data numeric


Tipe data numeric pada variabel atau konstanta digunakan untuk menyimpan nilai
dalam bentuk bilangan atau angka. Semua bahasa pemrograman menyediakan tipe
data numeric. Setiap bahasa pemrograman memiliki perbedaan dalam jenis numeric
yang diakomodasi. Tipe data yang termasuk dalam tipe data numeric antara lain integer
(bilangan bulat) dan float (bilangan pecahan). Selain itu, tipe data numeric menerapkan
presisi angka yang digunakan. Contoh dalam hal ini adalah tipe data Single dan Double.
Single adalah tipe data bilangan pecahan dengan presisi yang terbatas, sedangkan
Double adalah tipe data bilangan pecahan dengan presisi yang lebih akurat.
 Character
Character merupakan tipe data yang paling banyak digunakan. Tipe data character
disebut juga char atau string. Tipe data string hanya dapat digunakan menyimpan teks
atau karakter apabila berada dalam tanda petik dua (“…”) atau petik tunggal (‘…’).

3
 Boolean
Tipe data Boolean digunakan untuk menyimpan nilai True/False (Benar/Salah). Pada
sebagian besar bahasa pemrograman nilai selain 0 menunjukkan True dan 0
melambangkan False. Tipe data ini banyak digunakan untuk pengambilan keputusan
pada struktur percabangan dengan IF … THEN atau IF … THEN … ELSE.
 Array
Array adalah tipe data yang mampu menyimpan sejumlah data dengan tipe yang sama
(homogen) dalam sebuah variabel. Setiap lokasi data array ditandai dengan nomor
indeks sebagai alamat dari data tersebut.
 Record atau Struct
Record atau Struct termasuk tipe data komposit. Record dikenal dalam bahasa
Pascal/Delphi sedangkan Struct dikenal dalam bahasa C++. Tipe data record mampu
menampung banyak data dengan tipe data berbeda-beda (heterogen). Array dapat
menyimpan banyak data hanya dengan satu tipe data yang sama, misalnya integer.
Sedangkan record dapat menyimpan banyak data dengan tipe data yang berbeda, satu
bagian integer, bagian lagi character atau Boolean. Umumnya record digunakan untuk
menampung data berupa obyek. Misalnya, siswa memiliki nama, nis, alamat, dan
tanggal lahir. Nama dan alamat menggunakan tipe data string, nis bertipe data
integer(numeric) dan tanggal lahir bertipe data date.
 Image
Image atau gambar merupakan tipe data grafik. Contohnya grafik perkembangan
jumlah siswa SMK, foto keluarga kita, video perjalanan dan lain-lain. Pada bahasa-
bahasa pemrograman modern terutama yang berbasis visual tipe data ini mendapat
dukungan yang sangat baik.
 Date Time
Tipe data ini masuk dalam kelompok tipe data composite karena merupakan
bentukan dari beberapa tipe data. Nilai data untuk tanggal (Date) dan waktu (Time)
secara internal disimpan dalam format yang spesifik. Variabel atau konstanta yang
dideklarasikan dengan tipe data Date dapat digunakan untuk menyimpan tanggal
maupun jam.

4
 Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus
disebut satu persatu dan bernilai konstanta integer sesuai dengan urutannya. Nilai
konstanta integer elemen ini diwakili oleh suatu nama variable yang ditulis di dalam
kurung. Tipe data ini juga dijumpai pada Delphi dan bahasa pemrograman deklaratif
seperti SQL (Mulyanto, 2008).
 Object
Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-
obyek yang terdapat pada bahasa pemrograman berbasis GUI.
 Variant
Variant adalah tipe data yang hanya ada di Visual Basic. Tipe ini merupakan tipe yang
paling fleksibel. Hal ini dikarenakan tipe data Variant dapat mengakomodasi semua tipe
data yang lain.

3.Penulisan Algoritma
Terdapat aturan dan cara untuk menuliskan algoritma. Penulisan algoritma terdiri dari 3
cara, yaitu :
 Structure English (SE).
SE merupakan alat yang cukup baik untuk menggambarkan suatu algoritma.
Dasar dari SE adalah Bahasa Inggris, namun kita dapat memodifikasi dengan Bahasa
Indonesia sehingga kita boleh menyebutnya sebagai Structured Indonesian (SI)
(Mulyanto, 2008). Contoh structured English, yaitu :
Read side
Volume of the Cube is side multiplied side multiplied side
Print volume of the cube

 Pseudocode
Pseudocode adalah cara menjelaskan algoritma yang menyerupai bahasa
pemrograman. Pseudocode didasarkan pada bahasa pemrograman seperti BASIC,
FORTRAN atau PASCAL. Pseudocode berbasis bahasa PASCAL adalah pseudocode
yang umumnya digunakan. Contoh dari pseudocode ditunjukkan pada Gambar 7.1.

5
Gambar 7.1 Algoritma Menampilkan Deret Ganjil (Rimbawan, 2010)
 Flowchart
Flowchart atau bagan alir adalah skema/bagan (chart) yang menunjukkan
aliran (flow) di dalam suatu program secara logika. Flowchart merupakan media yang
umumnya digunakan untuk menggambarkan algoritma dalam bentuk notasi-notasi
tertentu. Terdapat beberapa simbol penting yang digunakan untuk membuat
algoritma dengan flowchart sebagaimana tercantum pada Tabel 7.1 sebagai berikut
Tabel 7.1 Notasi Flowchart
Nama Notasi Gambar Keterangan
Terminator Notasi ini digunakan untuk
menunjukkan awal dan
akhir suatu algoritma

Data digunakan untuk mewakili


data input atau output atau
menyatakan operasi
pemasukan data dan
pencetakan hasil.

Process digunakan untuk mewakili


suatu proses.

6
Decision digunakan untuk suatu
pemilihan, penyeleksian
kondisi di dalam suatu
program
Preparation digunakan untuk memberi
nilai awal, nilai akhir,
penambahan/pengurangan
bagi suatu variable counter
Connector digunakan untuk
menunjukkan suatu operasi
yang rinciannya ditunjukkan
ditempat lain (prosedur,
sub-prosedur, fungsi)
Arrow digunakan untuk
menunjukkan arus data
atau aliran data dari proses
satu ke proses lainnya.

Program Flowchart terdiri dari dua macam, yaitu bagan alir logika program
(program logic flowchart) dan bagan alir program komputer terinci (detailed
computer program flowchart). Bagan alir logika program digunakan untuk
menggambarkan langkah-langkah pada program komputer secara logis dan biasanya
dipersiapkan oleh seorang analis system. Sedangkan bagan alir program komputer
terinci digunakan untuk menggambarkan instruksi - instruksi program komputer
secara terinci. Bagan alir program komputer umumnya dikerjakan oleh programmer.
Contoh penerapan algoritma menghitung pembagian dua buah bilangan dengan
pseudocode dan flowchart :
SI (Structured Indonesia):
Algoritma pembagian
Baca a dan b
c adalah a dibagi b

7
start
cetak c
Pseudocode:
Algoritma Pembagian Read(a,b)
{menghitung pembagian dua buah bilangan}
KAMUS DATA
c←a/b
a,b :integer
BEGIN
Input a
Write(c)
Input b
c ← a/b
print c end
END

B.LATIHAN
1. Jelaskan mengenai algoritma !
2. Sebutkan notasi diagram alir dan jelaskan fungsi masing-masing!
3. Jelaskan macam-macam tipe data pada algoritma!
4. Tuliskan algoritma menghitung rata-rata bilangan dalam bentuk SI, pseudocode dan
flowchart!

C.Sumber :
Materi diatas bersumber dari :

 Mulyanto. 2008. Rekayasa Perangkat Lunak. Kemdikbud


 https://www.scribd.com/doc/43403158/Kumpulan-Soal-Dan-Jawaban-Algoritma-
Dan-Pemrograman-2. Kumpulan Soal Dasar- Dasar Algoritma dan Pemrograman.
Rimbawan, Awan.

Anda mungkin juga menyukai