LOGIKA DAN ALGORITMA KOMPUTER
Simulasi & Komunikasi Digital
A.
Definisi Logika
Logika
identik dengan masuk akal dan penalaran.
Penalaran adalah salah satu bentuk
pemikiran.
Pemikiran
adalah pengetahuan tak langsung yang didasarkan pada pernyataan langsung pemikiran
mungkin benar dan mungkin juga tak benar.
"Definisi
logika sangat sederhana yaitu ilmu yang memberikan prinsip – prinsip yang
harus diikuti agar dapat berfikir valid menurut aturan yang berlaku."
Pelajaran
logika menimbulkan kesadaran untuk menggunakan prinsip – prinsip untuk berfikir
secara sistematis.
B.
Definisi
Algoritma
-
Asal Usul kata
algoritma
Abu
Ja’far Muhammad Ibnu Musa Al Khuwarizmi adalah seorang penulis buku Arab yang
berjudul Kitab Al Jabar Wal Muqabala (Buku Pemugaran dan Pengurangan). Kata Al
Khuwarizmi dibaca orang barat menjadi Algorism.
Kata
algorism berrti proses menghitung dengan angka arab. Seseorang dikatakan
algorist jika orang tersebut menggunakan bahasa arab.
Kata
algorism lambat laun menjadi algorithm disebabkan kata algorism sering
dikelirukan dengan kata arithmetic sehingga akhiran –sm berubah menjadi –thm.
Kata agorithm diserap ke dalam bahasa indonesia menjadi algoritma.
- "Algoritma adalah
urutan langkah – langkah logis penyeesaian masalah yang disusun secara
sistematis."
Kata
logis disini berarti benar sesuai dengan logika manusia.
Untuk
menjadi sebuah algoritma, urutan langkah yang ditempuh untuk menyelesaikan
masalah harus memberikan hasil yang benar.
Masalah
dapat berupa apa saja, dengan catatan untuk setiap masalah, ada syarat kondisi
awal yang harus dipenuhi sebelum menjalankan algoritma. Konsep algoritma sering kali disetarakan
dengan sebuah resep. Sebuah resep
biasanya memiliki daftar bahan atau bumbu yang akan digunakan, urutan
pengerjaan dan bagaimana hasil dari urutan pengerjaan tersebut. Apabila bahan yang digunakan tidak tertera
(tidak tersedia) maka resep tersebut tidak akan dapat dikerjakan. Demikian juga jika urutan pengerjaannya tidak
beraturan, maka hasil yang diharapkan tidak akan dapat diperoleh.
Algoritma
yang berbeda dapat diterapkan pada suatu masalah dengan syarat yang sama. Tingkat kerumitan dari suatu algoritma
merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut
untuk menyelesaikan masalah. Umumnya,
algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat
memiliki tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan
waktu lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang
tinggi.
C.
Manfaat Algoritma
Manfaat Algoritma adalah Untuk
membantu seseirang dalam menyelesaikan suatu masalah berdasarkan pada pola
pikirnya masing-masing.
D.
Hal yang harus
dipenuhi dalam membuat algoritma
- Input : data yang harus diberikan pada komputer
- Output : informasi yang akan diperoleh dari komputer
- Logika : merencanakan proses program. Terdiri dari sejumlah instruksi yang mengubah input menjadi output yang diinginkan.
E.
Contoh – Contoh
Algoritma
-
Algoritma
perhitungan luas segitiga
1)
Start
2)
Baca data alas
dan tinggi.
3)
Periksa data
alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol maka
lanjutkan ke langkah ke 4 jika tidak maka stop
4)
Luas adalah alas
kali tinggi kali 0.5
5)
Tampilkan Luas
6)
Stop
Dari penjelasan di atas dapat diambil kesimpulan
pokok tentang algoritma.
Pertama, algoritma harus benar.
Kedua algoritma harus berhenti, dan setelah
berhenti, algoritma memberikan hasil yang benar.
F.
Ciri – ciri
algoritma
-
Ada Input
-
Ada Proses
-
Ada Output
-
Memiliki Instruksi-Instruksi yang jelas dan tidak Ambigu.
-
Harus mempunyai Stoping Role
G. Sifat Algoritma
- Tidak mengunakan symbol atau Syintaks dari suatu bahasa pemrograman.
- Tidak tergantung pada suatu bahasa pemrograman.
- Notasi-notasinya dapat digunakan untuk seluruh bahasa pemrograman manapun.
H.
Jenis proses
algoritma :
-
Sequence process
= instruksi dikerjakan secara sekuensial / berurutan
-
Selection
process = instruksi dikerjakan jika memenuhi kriteria tertentu
-
Iteration
process = instruksi dikerjakan selama memenuhi suatu kondisi tertentu
-
Concurrent
process = beberapa instruksi dikerjakan secara bersama
I.
Bentuk – bentuk
Penyajian Algoritma Komputer
1.
Bahasa Natural
Penyajian
algoritma dengan bahasa alamiah dilakukan dengan menyusun uraian kata yang
menggunakan bahasa inggris atau dengan bahasa lain, misalnya bahasa indonesia.
Misal
:
Mulai
Cetak tulisan
selesai
2.
Flowchart
Flowchart atau
bagan alir adalah skema/bagan (chart) yang menunjukkan aliran (flow) di dalam
suatu program secara logika. Flowchart
merupakan alat yang banyak digunakan untuk menggambarkan algoritma dalam bentu
notasi-notasi tertentu. Secara lebih
detil bagian ini akan dibahas pada bagian berikutnya. Pada flowchart ada
beberapa simbol penting yang digunakan untuk membuat algoritma sebagaimana
tercantum pada Gambar di bawah ini :
Program
Flowchart dapat terdiri dari dua macam, yaitu
a. bagan alir logika program (
program logic flowchart ) dan
b. bagan alir program komputer terinci (detailed
computer program flowchart).
Bagan alir
logika program digunakan untuk menggambarkan tiap-tiap langkah di dalam program
komputer secara logika dan biasanya dipersiapkan oleh seorang analis
system. Sedangkan bagan alir program
komputer terinci digunakan untuk menggambarkan instruksi-instruksi program
komputer secara terinci dan biasanya dipersiapkan oleh seorang programmer.
Contoh algoritma
dengan flowchart :
Bagan alir logika program Bagan alir program komputer terinci
3.
Pseudocode
Pseudocode
mirip dengan SE. Karena kemiripan ini
kadang-kadang SE dan Pseudocode dianggap sama.
Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode program. Sehingga pseudocode adalah kode yang mirip
dengan instruksi kode program sebenarnya.
Pseudocode didasarkan pada bahasa pemrograman yang sesungguhnya seperti
BASIC, FORTRAN atau PASCAL. Pseudocode yang berbasis bahasa PASCAL
merupakan pseudocode yang sering
digunakan Kadang-kadang orang menyebut pseudocode sebagai PASCAL-LIKE
algoritma.
Contoh Pseudocode ;
1. Start
2. READ alas, tinggi
3. Luas = 0.5 * alas *
tinggi
4. PRINT Luas
5. Stop
Pada Contoh diatas tampak bahwa algoritma sudah
sangat mirip dengan bahasa BASIC.
Pernyataan seperti READ dan PRINT merupakan keyword yang ada pada bahasa
BASIC yang masing-masing menggantikan kata “baca data” dan “tampilkan”. Dengan
menggunakan pseudocode seperti di atas maka proses penterjemahan dari algoritma
ke kode program menjadi lebih mudah.


