Anda di halaman 1dari 19

BAB II

DEFINISI ALGORITMA

Kompetensi Dasar :
1. Mahasiswa mampu memahami algoritma dan flowchart
2. Mahasiswa mengenal Turbo Pascal For Win 1.5

Indikator :
1. Mahasiswa mampu menyelesaikan masalah dengan
solusi yang terstruktur dan runtut.
2. Mahasiswa mampu membuat algoritma dari sebuah
kasus.
3. Mahasiswa mampu membuat flowchart berdasarkan
algoritma yang ada.
4. Mahasiswa mampu menggunakan Turbo Pascal For Win
1.5 sebagai compiler bahasa Pascal.
5. Mahasiswa mampu melakukan kompilasi dan
menjalankan program dengan bahsa Pascal sampai
tampil output program menggunakan Turbo Pascal For
Win 1.5.

4
A. Pemrograman Komputer
Dalam kehidupan sehari–hari, untuk
berkomunikasi dengan orang lain, kita harus
menggunakan bahasa yang sama dengan orang tersebut.
Apabila kita menggunakan Bahasa Indonesia, lawan
bicara kita harus mengerti Bahasa Indonesia. Kalau
lawan bicara kita tidak mengerti Bahasa Indonesia,
kita masih bisa berkomunikasi dengannya melalui
penerjemah.
Dalam pemograman komputer, berlaku juga hal
seperti di atas. Kita harus menggunakan bahasa yang
dimengerti oleh komputer untuk memberikan suatu
instruksi. Pada dasarnya, komputer adalah mesin
digital, artinya komputer hanya mengenal kondisi ada
arus listrik (biasanya dilambangkan dengan 1) dan
tidak ada arus listrik (dilambangkan dengan 0).
Dengan kata lain kita harus menggunakan sandi 0 dan
1 untuk melakukan pemrograman komputer. Bahasa
pemrograman yang menggunakan sandi 0 dan 1 ini
disebut bahasa mesin (assembly). Sebagai contoh,
dalam prosesor Intel, terdapat perintah 0011 1010
0000 1011. Perintah dalam bahasa mesin ini sama
artinya dengan perintah assembly CMP AL, 0D, yang
artinya bandingkan nilai register AL dengan 0D. CMP
di sini sebenarnya adalah singkatan dari CoMPare.
Untuk membantu manusia dalam mengkonversi bahasa
mesin diperlukan perangkat lunak yang disebut
assembler.
Pemrograman dengan bahasa assembly masih terasa
sulit bagi kebanyakan orang sehingga dikembangkan
bahasa pemrograman yang lebih mudah digunakan.

5
Bahasa pemrograman yang dikembangkan ini lebih
condong ke bahasa manusia dan disebut bahasa
generasi ketiga / 3GL (Third-Generation Language)
atau juga dikenal dengan bahasa tingkat tinggi/ HLL
(High-Level Language). Sebagai contoh Basic, Pascal,
C, C++, Cobol, dsb.
Bahasa generasi ketiga menggunakan kata-kata
dalam bahasa Inggris karena bahasa tersebut adalah
bahasa internasional, misal ;
Pascal:
writeln (‘Algoritma’);
Atau perintah dalam bahasa C:
printf (“Algoritma\n\r”):
Atau perintah dalambahasa C++:
cout << “Algoritma” << endl;
Ketiga pernyataan di atas bertujuan sama yaitu
menuliskan teks ‘algoritma’ ke keluaran standar
(Standard Output), ke layar monitor. Ketiga perintah
sederhana di atas sebenarnya terdiri dari puluhan
atau bahkan ratusan pernyataan assembly. Perangkat
lunak yang menerjemahkan program dalam bahasa
manusiawi ke dalam bahasa assembly atau mesin ada
dua macam, yaitu interpreter dan kompiler.
Interpreter menerjemahkan program baris
perbaris artinya jika suatu baris akan diekskusi
maka baris tersebut diterjemahkan terlebih dahulu ke
bahasa mesin. Apabila baris berikutnya akan
diekskusi maka baris tersebut baru diterjemahkan
kedalam bahasa mesin. Contoh bahasa pemograman yang
menggunakan interpreter adalah basic.

6
Kompiler menerjemahkan semua perintah kedalam
bahasa mesin kemudian menjalankan hasil
penerjemahan. Hasil penerjemahan ini bisa disimpan
dalam file atau memori. Contoh bahasa pemrograman
yang menggunakan kompiler adalah Pascal, C, dan C++.
Khusus untuk Pascal, ada beberapa kompiler tetapi
jumlahnya sedikit. Misalnya Turbo Pascal
(http://www.inprice.com), GNU Pascal
(http://didaktik.physik.uni-essen.de/~gnu-
pascal/home.html), Free Pascal
(http://www.freepascal.sk), dsb. Kompiler Pascal
yang banyak digunakan adalah Turbo Pascal, sehingga
pada modul ini juga digunakan Turbo Pascal sebagai
acuannya.
Perkembangan bahasa pemrograman setelah bahasa
generasi ketiga adalah bahasa generasi keempat atau
yang disingkat 4GL (fourth-generation language).
Bahasa ini banyak digunakan sebagai aplikasi basis
data (database), salah satu contohnya adalah SQL
(Structured Query Language). Pada bahasa ini,
perintah-perintah yang digunakan lebih manusiawi,
misalnya “SELECT Nama,Nilai FROM Mahasiswa”, untuk
mengambil data Nama dan Nilai dari basis data
Mahasiswa.

B. Langkah-langkah dalam Pemrograman Komputer


Dalam pemrograman komputer, diperlukan beberapa
langkah dan langkah-langkah yang disajikan pada
modul ini tidak bersifat mutlak. Artinya Anda tidak
harus melakukan dari langkah pertama, kedua, ketiga,
dst. Ada beberapa langkah yang harus atau mungkin

7
diulang sampai beberapa kali. Berikut ini contoh
beberapa langkah yang harus dilakukan dalam
pemrograman komputer:
1. Mendefinisikan Masalah.
Mendefinisikan masalah dengan menentukan
masalahnya seperti apa, kemudian apa saja yang
harus dipecahkan dengan komputer, yang terakhir
adalah apa masukannya dan bagaimana keluarannya.

2. Menentukan Solusi.
Setelah masalah didefinisikan dengan jelas,
masukan yang diberikan sudah jelas, keluaran yang
diinginkan sudah jelas, maka langkah selanjutnya
adalah mencari jalan penyelesaian masalah. Jika
permasalahan terlalu kompleks, biasanya kita harus
membaginya ke dalam beberapa modul kecil agar
lebih mudah diselesaikan. Sebagai contoh, program
untuk menghitung invers matriks, dapat dibagi
menjadi beberapa modul kecil. Modul pertama adalah
meminta masukan dari pengguna berupa matriks bujur
sangkar. Modul kedua adalah mencari invers matriks
yang dimasukkan pengguna. Modul terakhir adalah
menampilkan hasilnya pada pengguna.

3. Memilih Algoritma.
Langkah ini merupakan salah satu langkah yang
penting dalam pemrograman komputer karena
pemilihan algoritma yang salah akan menyebabkan
program memiliki unjuk kerja yang kurang baik.

8
4. Menulis Program.
Pada langkah ini dimulai penulisan program
komputer untuk memecahkan masalah yang diberikan.
Untuk menulis program dapat digunakan salah satu
bahasa generasi ketiga. Ada beberapa hal yang
harus diperhitungkan sebelum memilih bahasa
pemrograman, antara lain masalah yang dihadapi,
bahasa pemrograman yang Anda kuasai, dsb.

5. Menguji Program.
Setelah program selesai ditulis dilakukan
pengujian. Pengujian pertama adalah; Apakah
program berhasil dikompilasi dengan baik?
Pengujian berikutnya; Apakah program dapat
menampilkan keluaran yang diinginkan? Lebih jauh
lagi program harus diuji dengan banyak kasus.
Sering terjadi, suatu program berjalan baik untuk
kasus A, B, C; tetapi menghasilkan sesuatu yang
tidak diinginkan untuk kasus X,Y, dan Z. Langkah
ini bisa dilakukan berulang-ulang sampai program
diyakini benar-benar berjalan sesuai dengan yang
diharapkan.

6. Menulis Dokumentasi.
Merupakan hal sepele yang sering dilupakan, karena
tidak ada fungsinya pada saat pembuatan program,
namun pada masa mendatang akan sangat diperlukan,
apalagi bagi orang lain yang mempelajari program
kita. Dokumentasi ada dua, yaitu di atas kertas
dan menjadi satu dalam program (komentar pendek

9
yang menerangkan fungsi perintah-perintah yang ada
dalam program tersebut.

7. Merawat program
Setelah program selesai dan digunakan oleh user,
maka sering kali muncul bug / kesalahan yang
sebelumnya tidak terdeteksi, atau juga user ingin
menambahkan fasilitas baru, sehingga program harus
direvisi.

C. Definisi Algoritma
1. Pengertian
Ditinjau dari asal usul katanya kata Algoritma
sendiri mempunyai sejarah yang aneh. Orang hanya
menemukan kata Algorism yang berarti proses
menghitung dengan angka arab. Anda dikatakan
Algorist jika anda menghitung menggunakan Angka
Arab. Para ahli bahasa berusaha menemukan asal
kata ini 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. Al-Khuwarizmi dibaca orang barat
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). Dari judul buku itu
kita juga memperoleh akar kata “Aljabar”
(Algebra). Perubahan kata dari Algorism menjadi
Algorithm muncul karena kata Algorism sering
dikelirukan dengan Arithmetic, sehingga akhiran –

10
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.

2. Definisi Algoritma
“Algoritma adalah urutan langkah-langkah logis
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.

3. Aturan Penulisan Algoritma


Pada setiap bagian algoritma apabila akan
dituliskan komentar mengenai setiap bagian
tersebut dituliskan di antara tanda kurung
kurawal, contoh { Komentar }. Notasi algoritmis
yang dituliskan diantara tanda ini tidak akan
dieksekusi oleh program.
Contoh :

11
Setiap Algoritma akan selalu terdiri dari tiga
bagian yaitu :
a. Judul (Header)
Judul adalah bagian teks algoritma yang
digunakan sebagai tempat mendefinisikan nama
dengan menentukan apakah teks tersebut adalah
program, prosedur, fungsi. Setelah judul
disarankan untuk menuliskan spesifikasi
singkat dari teks algoritma tersebut. Nama
algoritma sebaiknya singkat namun cukup
menggambarkan apa yang akan dilakukan oleh
algoritma tersebut.
Contoh :

Catatan :
Untuk memisahkan antara kata dalam judul
algoritma menggunakan tanda “_” bukanlah
suatu keharusan. Anda dapat menuliskan
LuasLingkaran atau Luas_Lingkaran. Tetapi

12
sebaiknya anda tidak menggunakan spasi “ “
untuk memisahkan antara kata di dalam nama
algoritma.

b. Kamus (Deklarasi)
Kamus adalah bagian teks algoritma sebagai
tempat untuk mendefinisikan :
1) Nama type
2) Nama konstanta
3) Nama variable
4) Nama fungsi
5) Nama prosedur
Semua nama tersebut baru dapat dipakai di
dalam algoritma jika telah didefinisikan
terlebih dahulu didalam kamus. Penulisan
sekumpulan nama dalam kamus sebaiknya
dikelompokan menurut jenis nama tersebut.
Nama ariable belum terdefinisi nilainya
ketika didefinisikan. Pendefinisian nama
konstanta sekaligus memberikan harga
konstanta tersebut, pendefinisian nama fungsi
dilakukan sekaligus dengan domain / range
serta spesifikasinya. Pendefinisian nama
prosedur sekaligus dengan pendefinisian
parameter (jika ada) dan spesifikasi prosedur
(kondisi awal “Initial State”, Kondisi akhir
“ Final State” dan proses yang dilakukan).
Contoh :

13
c. Algoritma
Algoritma adalah bagian inti dari suatu
algoritma yang berisi instruksi atau
pemanggilan aksi yang telah didefinisikan.
Komponen teks algoritma dalam pemrograman
procedural dapat berupa :
1) Instruksi dasar seperti input/output,
assignment
2) Sequence (runtutan)

14
3) Analisa kasus
4) Perulangan
Setiap langkah algoritma dibaca dari “atas”
ke “bawah”. Urutan deskripsi penulisan
menentuan urutan langkah pelaksanaan
perintah.
Contoh :

15
D. Flow Chart
Dalam proses pembuatan program kadang-kadang
perlu digambarkan bagaimana arus data dari algoritma
yang sudah dibuat, terutama kalau algoritma sudah
cukup kompleks. Untuk itu algoritma dapat disajikan
dalam bentuk flow chart. Flow chart merupakan
gambaran program secara runtut yang digambarkan
menggunakan simbol-simbol yang telah ditetapkan
bentuknya yaitu sebagai berikut :

No. Simbol Makna


Start/mulai
1.
End/selesai
Input
2.
Output

3. Kondisi

Procedure /
4.
Function

5. Perulangan for

6. Proses/penugasan

Nilai awal/
7.
Inisialisasi

16
Contoh : Flowchart untuk menjumlahkan dua bilangan
bulat.

mulai

bil1, bil2

jumlah =
bil1 + bil2

jumlah

selesai

1. Operator Aritmatika
Rumus-rumus aljabar biasanya melibatkan operator
aritmatika, di antaranya:
Aritmatika Pascal Arti
+ + Penjumlahan
- - Pengurangan
Divide Div Pembagian bilangan
bulat
Mod Mod Sisa pembagian
(modulus)

2. Pemrograman
Dalam bahasa Pascal, pernyataan yang berkaitan
dengan operasi dasar adalah sebagai berikut:
Pernyataan Algoritmik Bahasa
Pascal
Input Read read atau

17
readln
Output Write write atau
writeln
Penugasan ← :=
Akhir ;
pernyataan

Fungsi yang sering digunakan yaitu :


Fungsi Arti
Sqr kuadrat
Sqrt akar kuadrat
Ln logaritma
alami
Exp eksponensial

E. Turbo Pascal For Windows 1.5

18
Gambar di atas adalah tampilan Turbo Pascal For
Windows 1.5 yang merupakan versi yang dipakai untuk
pemrograman menggunakan bahasa pascal berbasis
windows yang dikembangkan dari versi sebelumnya yang
berbasis DOS. Pada Turbo Pascal For Win ini tampilan
dan pengggunaannya lebih dipermudah sehingga akan
memudahkan programmer untuk coding / memprogram
dengan pascal.
Terdapat 8 menu utama yang disediakan pada tool ini,
yaitu File, Edit, Search, Run, Compile, Options,
Window, dan Help. Untuk membuka menu-menu tersebut
dapat menggunakan pointer mouse atau menekan tombol
Alt ditambah dengan huruf-huruf yang digarisbawahi
seperti untuk membuka menu File gunakan Alt + F.
1. Menu File berisi submenu yang berhubungan
dengan file baik itu membuat baru, menyimpan,
dan juga untuk mencetak atau print.
2. Menu Edit berisi submenu undo (Alt+Bksp), redo,
cut (Shift+Del), copy (Ctrl+Ins), paste
(Shift+Ins), clear (Ctrl+Del) dan semua submenu
tersebut berhubungan dengan editing program.
3. Menu Search berisi submenu untuk pencarian dan
penggantian kata atau pencarian error.
4. Menu Run untuk menjalankan program dan untuk
melakukan debug. Untuk menjalankan program agar
tampil outpit program gunakan perintah Run
(Ctrl+F9).
5. Menu Compile dipakai untuk melakukan kompilasi
sekaligus pengecekan kesalahan dan membuat file
exe untuk diekskusi dengan perintah Run. Untuk
kompilasi gunakan perintah compile (Alt+F9).

19
6. Menu Options memberikan keleluasaan bagi user
untuk melakukan konfigurasi yang berbeda dengan
bawaan / default dari Turbo Pascal For Win 1.5.
7. Menu Windows untuk pengaturan tampilan jendela
/ windows kerja sehingga enak untuk di lihat.
8. Menu Help untuk bantuan bagaimana penggunaan
Turbo Pascal For Win 1.5 dan berbagai tutorial
lainnya yang berkenaan dengannya.

F. Rangkuman
1. Pemrograman komputer merupakan suatu aktivitas
untuk membuat program yang mampu dimengerti oleh
komputer dan dibantu dengan compiler untuk
penterjemah dan bahasa pemrograman.
2. Ada beberapa langkah dalam pemrograman komputer
a. Mendefinisikan masalah
b. Menentukan solusi
c. Memilih algoritma
d. Menulis program
e. Menguji program
f. Menulis dokumentasi
g. Merawat program
3. “Algoritma adalah urutan langkah-langkah logis
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.
4. Flowchart adalah gambaran program secara runtut
yang digambarkan menggunakan simbol-simbol yang
telah ditetapkan.

20
5. Turbo Pascal For Win 1.5 merupakan salah satu
compiler yang digunakan untuk membantu pemrograman
menggunakan bahasa Pascal.

G. Tugas Praktikum (dikumpul akhir sesi)


Buatlah algoritma dan flowchart untuk menyelesaikan
kasus-kasus berikut ini :
1. Menghitung luas segitiga.
2. Menghitung luas lingkaran.

H. Tugas Rumah (dikumpulkan pada pertemuan berikutnya)


Berdasarkan algoritma dan flow chart yang anda buat,
susun program untuk mencari luas segitiga dan luas
lingkaran dalam bahasa Pascal.

21
Daftar Pustaka

Pranata, Anthony., Algoritma Pemrograman, J&J Learning,


Yogyakarta

Sutopo, Anton, Pemrograman Komputer Dasar, 2005,


Yogyakarta

Budiyanto, Alex, Pengantar Algoritma dan Pemrograman,


2003, www.ilmukomputer.com

22

Anda mungkin juga menyukai