A.
PENGERTIAN LOGIKA DAN ALGORITMA
Logika
berasal dari
dari bahasa Yunani yaitu LOGOS yang berarti ilmu. Logika dapat diartikan
ilmu yang mengajarkan cara berpikir untuk melakukan aksi dengan tujuan
tertentu.
Algoritma
berasal dari
nama seorang Ilmuwan Arab yang bernama Abu Ja‟far Muhammad Ibnu Musa Al
Khuwarizmi penulis buku berjudul Al Jabar Wal Muqabala (Buku Pemugaran dan
Pengurangan). Kata Al Khuwarizmi dibaca orang barat menjadi Algorism yang
kemudian lambat laun menjadi Algorithm diserap dalam bahasa Indonesia menjadi
Algoritma. Algoritma dapat diartikan urutan langkah-langkah
(instruksi-instruksi / aksi-aksi) terbatas untuk menyelesaikan suatu masalah.
Dari
pengertian diatas maka dapat diartikan Logika dan Algoritma adalah ilmu
yang mempelajari cara penyelesaian masalah berdasarkan langkah-langkah terbatas
yang logis dan sistematis dengan tujuan tertentu.
Contoh
Algoritma:
Permasalahan:
Diberikan
dua gelas (A dan B), gelas A berisi air kopi dan gelas B berisi air teh.
Pertukarkan isi gelas tersebut sehingga menghasilkan gelas A semula berisi air
kopi menjadi berisi air teh dan gelas B yang semula berisi air teh menjadi
berisi air kopi.
Penyelesaian:
Untuk mempertukarkan
isi gelas dengan benar, maka diperlukan gelas tambahan yang kita namakan gelas
C sebagai tempat penampungan sementara. Berikut Algoritmanya:
Algortima
Tukar_Isi_Gelas Ada
dua gelas (gelas A dan gelas B), gelas A berisi Kopi dan gelas B berisi Teh.
Pertukarkan isi kedua gelas tersebut sehingga gelas A yang semula berisi Kopi
menjadi berisi Teh dan gelas B yang semula berisi Teh menjadi berisi Kopi
Deskripsi 1.
Tuangkan isi gelas A ke gelas C 2. Tungkan isi gelas B ke gelas A 3. Tuangkan
isi gelas C ke gelas B
Hasil
akhir dari algoritma pertukaran isi gelas menjadi:
A
: berisi Teh
B : berisi air Kopi
B.
Syarat-Syarat Algoritma
Syarat-Syarat Algoritma menurtu
Donald E. Knuth, yaitu:
1. Finiteness (Keterbatasan)
Algoritma harus berakhir setelah
melakukan sejumlah langkah proses
2. Definiteness (Kepastian)
Setiap langkah algoritma harus
didefinisikan dengan tepat dan tidak menimbulkan makna ganda
3. Input (Masukan)
Sebuah algoritma memiliki nol
atau lebih masukan (input) yang diberikan kepada algoritma sebelum dijalankan
4. Output (Keluaran)
Setiap algoritma memberikan satu
atau beberapa hasil keluaran
5. Effectiveness (Efektivitas)
Langkah-langkah
algoritma dikerjakan dalam waktu yang “wajar”
C.
Struktur Dasar Algoritma
Suatu
Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan, pemilihan dan
pengulangan. Berikut Penjelasan ringkas dari tiga struktur tersebut :
1.
Runtunan
Runtunan yaitu satu
atau lebih instruksi yang dikerjakan secara berurutan sesuai dengan urutan penulisannya.
Urutan dari instruksi menentukan hasil akhir dari suatu algoritma. Bila urutan
penulisan berubah maka mungkin juga hasil akhirnya berubah.
Perhatikan contoh
operasi aritmatika berikut:
A
|
B
|
(3 * 5)
+ 5 = 20
|
3 * (5 +
5) = 30
|
Dari contoh diatas
dapat dilihat ternyata hasil akhirnya dapat berubah apabila urutan
pengerjaannya berbeda.
2.
Pemilihan
Pemilihan
yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi adalah
persyaratan yang dapat bernilai benar atau salah. Instruksi hanya dilaksanakan
apabila kondisi bernilai benar, sebaliknya apabila salah maka instruksi tidak
akan dilaksankan. Pernyataaan kondisi menggunakan statemen If (jika) dan Then
(maka).
Contoh
pernyataaan kondisi
Jika
suatu bilangan
habis dibagi dua
Maka
bilangan itu
bilangan genap
3.
Pengulangan
Pengulangan
merupakan pengulangan sejumlah aksi yang sama sebanyak jumlah yang ditentukan
atau sesuai dengan kondisi yang diinginkan. Beberapa statemen pengulangan
yaitu:
For …
To ... Do / For ... Downto ... Do
While
… Do
Repeat ... Until
D.
Penulisan Algoritma
Algoritma
dapat ditulis dengan cara berikut:
1.
Menggunakan bahasa natural
2.
Menggunakan kode semu (pseudo-code)
Teknik
penulisan yang mendekati bahasa pemrograman tertentu
3.
Menggunakan diagram alir (flow chart)
Teknik
penyajian dengan menggunakan symbol-simbol.
Dari
ketiga cara ditas untuk mempermudah translasi teks algoritma kedalam teks
program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa pemrograman
(pseudo-code).
Contoh:
Tulislah
algoritma untuk mencari Luas Persegi Panjang, apabila diketahui nilai panjang 8
dan nilai lebar 5.
Bahasa
Natural
1 Mulai
2 Masukkan
Nilai Panjang Persegi Panjang
3 Masukkan
Nilai Lebar Persegi Panjang
4 Hitung
Luas Persegi (Luas = Panjang x Lebar)
5 Tampilkan
Nilai Luas Persegi Panjang
7 Selesai
Pseude
Code
1 Start
2 Input
(Panjang)
3 Input (Lebar)
4 Luas <= Panjang
* Lebar
5 Output
(Luas)
7 End
E. Teks Algoritma
Teks
algoritma tersusun dalam tiga bagian, yaitu:
1.
Bagian Kepala
2.
Bagian Deklarasi
3.
Bagian Deskripsi
Setiap
bagian disertai dengan penjelasan tentang maksud penulisan teks. Penjelasan
ini ditulis dalam kurung seperti ini { }
Algoritma
nama_algoritma
{penjelasan singkat uraian yang dilakukan oleh algoritma}
Deklarasi
{semua nama
yang digunakan, meliputi nama-nama: tipe, konstanta, variable juga nama sub
program dinyatakan dibagian ini}
Deskripsi {semua
langkah penyelesaian dituliskan disini}
Contoh Algoritma Cetak Ucapan
Algoritma Cetak_Ucapan
{mencetak ucapan „Selamat
Belajar „ dan diikuti dengan nama orang}
Deklarasi
nama
: string;
Deskripsi
Nama <= ‟Ahmad‟ write(„Selamat
Belajar‟, nama)