You are on page 1of 8

menerapkan-logika-dan-algoritma-komputer

LOGIKA
Definisi Logika - Secara etimologis, logika adalah istilah yang dibentuk dari kata logikos yang berasal dari kata benda logos.
Kata logos, berarti sesuatu yang diutarakan, suatu pertimbangan akal (pikiran), kata, percakapan, atau ungkapan lewat
bahasa. Kata logikos, berarti mengenal kata, mengenai percakapan atau yang berkenaan dengan ungkapan lewat bahasa.
Dengan demikian, dapatlah dikatan bahwa logika adalah suatu pertimbangan akal atau pikiran yang diutrakan lewat kata
dan dinyatakan dalam bahasa.
Logika adalah ilmu pengetahuan dan keterampilan berpikir lurus. Tt, (1999 :71)
Logika adalah suatau pertimbangan akal atau pikiran yang diatur lewat kata dan dinyatakan dalam bahasa. Jan Hendrik
Rapar, (1996 : 5)
Logika adalah ilmu dan kecakapan menalar, berpikir dengan tepat.W. Poespoprodjo, Ek. T. Gilarso. (2006: 13)
Logika adalah suatu metode atau teknik yang diciptakan untuk meneliti ketepatan nenalar. Soekadijo, (1983-1994: 3)
Aristoteles : logika adalah ajaran tentang berpikir yang secara ilmiah membicarakan bentuk pikiran itu sendiri dan hukum-
hukum yang menguasai pikiran.(Harun, 1980) Surajiyo, Sugeng Astanto, Sri Andiani(…..:10)
William Alston : logika adalah studi tentang penyimpulan, secara lebih ceramat usaha untuk mennetapkan ukuran-ukuran
guna memisahkan penyimpulan yang sah dan tidak sah.Surajiyo, Sugeng Astanto, Sri Andiani(…..: 9)
A. Tempat Logika dalam Peta Ilmu Pengetahuan
Aristoteles (384-322 SM) membagi ilmu pengetahuan ke dalam tiga kelas atau tiga kelompok sebagai berikut
1. Filsafat Spekulatif atau Filsafat Teorites, yang bersifat objektif dan bertujuan pengetahuan demi pengetahuan itu sendiri.
Kelompok ini terdiri dari atas fisika, metafisila, biopsikologi, dan teologia.
2. Filsafat Praktika, yang member pedoman bagi tingkah laku manusia. Kelompok ini terdiri atas etika dan politik.
3. Filsafat Produktif, yang membimbing manusia menjadi produktif lewat ketrampilan khusus. Kelompok ini terdiri dari atas
kritik sastra, retrotika, dan estetika.
B. Logika Tradisional dan Logika Modern
Logika modern atau logika simbolik, Karena menggunakan tanda-tanda atau symbol-simbol matematik, hanya sanggup
membahas hubungan antara tanda-tanda itu, padahal realitas tak mungkin dapat ditangkap sepenuhnya dan setepat-
tepatnya oleh symbol-simbol matematik.
Logika tradisoinal membahas dan mempersoalkan definisi, konsep, dan term menurut struktur, susunan dan nuansanya,
serta seluk-beluk penalaran untuk memperoleh kebenaran yang lebih susuai dengan realitas.
C. Kegunaan Logika
Ada empat kegunaan logika :
1. Membantu setiap orang yang mempelajari logika untuk berpikir secara rasional, kritis, lurus, tepat, tertib, metodis, dan
koheren.
2. Meningkatkan kemampuan berpikir secara abstrak, cermat, dan objektif.
3. Menambah kecerdasa dan meningkatkan kemampuan berpikir secara tajam dan mandiri.
4. Meningkatkan cinta akan keberanian dan menghindari kekeliruan kesesatan.

ALGORITMA
Pengertian Algoritma
Pengertian algoritma adalah suatu urutan dari beberapa langkah yang logis guna menyelesaikan masalah. Pada saat kita
memiliki masalah, maka kita harus dapat untuk menyelesaikan masalah tersebut dengan menggunakan langkah-langkah
yang logis. Contoh dari algoritma sederhana dalam kehidupan nyata adalah pada saat memasak air. Hal-hal yang perlu
dilakukan untuk memasak air seperti berikut : siapkan panci, masukkan air secukupnya ke dalam panci, tutup panci
tersebut, letakkan panci tersebut di atas kompor, hidupkan kompor dengan api sedang, apabila air sudah mendidih,
matikan kompor, setelah itu angkat panci tersebut dari kompor. Langkah-langkah untuk memasak air tersebut merupakan
algoritma memasak air. Sehingga memiliki urutan langkah-langkah yang logis
Dalam ilmu matematika dan komputer, pengertian algoritma merupakan prosedur dari beberapa langkah demi langkah
untuk penghitungan. Algoritma dipakai untuk penghitungan, penalaran otomatis, dan pemrosesan data. Pengertian
algoritma ialah suatu metode yang efektif diekspresikan sebagai rangkaian yang terbatas dari beberapa instruksi yang telah
dijelaskan dengan baik guna menghitung sebuah fungsi. Susunan algoritma dimulai dari kondisi awal dan input awal,
instruksi tersebut mendeskripsikan komputasi yang apabila itu dieksekusi serta diproses dengan melewati urutan-urutan
kondisi terbatas yang terdefinisi dengan baik, sehingga dapat menghasilkan output atau keluaran dan berhenti di kondisi
akhir yang telah ditentukan.

Pengertian Algoritma Algoritma sangat diperlukan untuk mengolah data yang ada di komputer. Dalam sistem komputer,
pengertian algoritma ialah logika yang dibuat dengan memakai software oleh para pembuat perangkat lunak untuk
membuat software tersebut menjadi lebih bagus. Algoritma berbeda dengan Logaritma. Perlu diketahui juga bahwa
logaritma adalah sebuah operasi di ilmu matematika guna menghitung kebalikan eksponen dari sebuah perpangkatan.

Kata Algoritma ditemukan oleh Abu Abdullah Muhammad Ibnu Musa Al-Khwarizmi, beliau merupakan matematikawan yang
berasal dari Persia yang ditemukan pada Abad Ke 9. Dari masa ke masa, kata algoritma mulai berkembang di abad ke 18.
Untuk lebih jelasnya lagi, berikut salah satu contoh algoritma :
Algoritma untuk menghitung nilai x dari persamaan x = 17y + 9 :
1) Memulai
2) Menentukan nilai y
3) Menghitung nilai x = 17y + 9
4) Menyelesaikan

Bentuk Dasar Algoritma


Algoritma sendiri mempunyai tiga 3 bentuk dasar, antara lain :
a. Algoritma Sekuensial (Sequence Algorithm)
Sequence algorithm atau algoritma sekuensial merupakan algoritma yang langkah-langkahnya secara urut dari awal hingga
akhir. Bentuk dari algoritma sekuensial ini salah satu contohnya seperti algoritma memasak air. Langkah demi langkah yang
dijalankan harus urut dari atas sampai bawah.
b. Algoritma Perulangan (Looping Algorithm)
Looping algorithm atau algoritma perulangan merupakan suatu algoritma yang menjalankan beberapa langkah tertentu
secara berulang-ulang atau looping. Pada masalah yang kita hadapi, ada pula sebuah langkah yang harus kita lakukan secara
berulang-ulang. Contoh dari algoritma looping ini adalah algoritma menjemur pakaian:
1) Siapkan jemuran.
2) Ambil satu pakaian yang nantinya akan dijemur.
3) Peras pakaian tersebut terlebih dahulu.
4) Letakkan pakaian tersebut pada tiang jemuran.
5) Ulangi langkah dari 2 sampai 4 hingga pakaian habis.
Dari algoritma di atas, dapat diketahui bahwa dari langkah 2 sampai 4 harus dilakukan secara berulang-ulang hingga pakaian
habis.
c. Algoritma Percabangan atau Bersyarat (Conditional Algorithm)
Conditional algorithm atau algoritma bersyarat merupakan algoritma yang menjalankan langkah berikutnya apabila
terdapat syarat yang sudah dapat dipenuhi. Berikut salah satu contoh dari algoritma bersyarat :
1) Siapkan panci.
2) Masukkan air secukupnya ke dalam panci.
3) tutup panci tersebut.
4) letakkan panci tersebut di atas kompor.
5) Hidupkan kompor.
6) Apabila air sudah mendidih, lalu matikan kompor.
7) Angkat panci tersebut dari kompor.
Algoritma bersyarat atau contional algorithm terdapat pada langkah ke 6. Apabila air sudah mendidih, lalu matikan kompor.
Sehingga apabila air tersebut belum mendidih, maka kompor tidak dimatikan.

Merancang Algoritma yang Baik


Menurut Donald E. Knuth, dari pengertian algoritma diatas dapat diketahui bahwa sebuah algoritma yang baik yaitu
algoritma yang mempunyai kriteria sebagai berikut :
Masukan (Input)
Algoritma mempunyai input 0 (nol) atau lebih
Keluaran (Output)
Algoritma harus menghasilkan atau mengeluarkan minimal 1 output. Terbatas (Finite)
Algoritma harus berhenti setelah melakukan langkah-langkah yang diperlukan. Pasti (Definite)
Algoritma harus jelas kapan dimulai dan berakhir. Tujuan dari algoritma harus jelas. Setiap langkah-langkah harus dijelaskan
dengan jelas.
Efisien
Membuat sebuah algoritma haruslah efisien. Adanya langkah seperti mencari hasil 1 + 0 tidak efisien. Hal ini karena
bilangan apapun itu jika ditambah dengan nol maka hasilnya ialah bilangan itu sendiri. Sehingga adanya langkah seperti itu
tidak perlu dimasukkan ke dalam sebuah algoritma.

Algoritma dapat disajikan ke dalam 2 bentuk, yaitu bentuk tulisan atau bahasa dan bentuk gambar. Penyajian algoritma
dalam bentuk bahasa atau tulisan harus memakai sebuah bahasa yang dapat untuk dimengerti manusia dalam membuat
langkah-langkah dari algoritma itu sendiri. Penyajian algoritma dalam bentuk tulisan/bahasa dapat dilakukan dengan
memakai pseudocode. Pseudocode berasal dari "pseudo" aritnya "menyerupai atau mirip" dan "code" yaitu "kode
program". Contoh dari beberapa bahasa pemrograman yang sering digunakan untuk menyatakan pseudocode antara lain :
pascal, BASIC, Pascal, C, dan lain sebagainya. Terdapat juga penyajian algoritma yang dalam bentuk gambar disebut flow
chart.
Klasifikasi Algoritma
Salah satu cara untuk mengklasifikasikan algoritma yaitu dengan menggunakan cara implementasi.
1 Rekursi atau iterasi
Algoritma rekursi ialah suatu algoritma yang memanggil dirinya sendiri secara berulang kali (looping) hingga pada kondisi
tertentu dapat tercapai. Rekursi merupakan suatu metode umum dalam pemrograman fungsional. Algoritma iteratif
memakai konstruksi berulang seperti pada pengulangan dan terkadang terdapat struktur data tambahan. Beberapa
permasalahan secara alami dapat cocok dengan 1 implementasi atau yang lainnya. Contohnya: Menara Hanoi yang dikenal
dengan implementasi rekursif. Pada setiap versi rekursif mempunyai adanya kesamaan (bisa lebih ataupun kurang
kompleks) dengan versi iteratif, ataupun sebaliknya.
2 Logical
Algoritma dapat dilihat sebagai sebuah logika deduksi terkontrol. Pernyataan ini dapat diekspresikan sebagai: Algoritma =
kontrol + logika. Komponen logika yang mengekspresikan aksioma dapat digunakan dalam komputasi serta komponen
kontrol dalam menentukan cara-cara deduksi yang digunakan pada aksioma. Hal tersebut adalah dasar dari paradigma
pemrograman logika. Dalam pemrograman, logika murni komponen kontrol ialah tetap serta algoritma yang ditentukan
dengan memberikan hanya ada komponen logikanya. Daya tarik dari pendekatan logical ialah semantik elegan, sebuah
perubahan yang ada dalam aksioma mempunyai perubahan dalam algoritma.
3 Serial, paralel atau terdistribusi
Pada umumnya, suatu algoritma menjalankan satu instruksi algoritma setiap waktu. Komputer tersebut dapat disebut
dengan komputer serial. Rancangan algoritma yang digunakan bagi lingkungan tersebut ialah algoritma serial, terbalik
dengan algoritma terdistribusi atau algoritma paralel. Algoritma paralel menggunakan arsitektur komputer yang mana
terdapat prosesor-prosesor dapat mengerjakan masalah pada waktu yang sama. Sedangkan algoritma terdistribusi
menggunakan banyak mesin yang terhubung ke jaringan. Algoritma terdistribusi atau paralel membagi permasalahan ke
banyak submasalah simetris maupun asimetris dan mengumpulkan hasil yang didapat kembali. Konsumsi dari sumber pada
algoritma tersebut tidak hanya ada perputaran prosesor tapi juga terdapat daya komunikasi antara prosesor. Algoritma
pengurutan dapat untuk diparalelkan secara efisien, namun terdapat biaya komunikasi yang sangat mahal. Algoritma iteratif
pada umumnya dapat untuk diparalelkan. Ada juga permasalah yang tidak ada algoritma paralelnya, disebut dengan
permasalahan serial lahiriah.
4 Deterministik atau non-deterministik
Terdapat juga algoritma determministik dan non-determenistik. Algoritma deterministik dapat menyelesaikan masalah-
masalah dengan keputusan tepat disetiap langkah-langkah dari sebuah algoritma. Algoritma non-deterministik dapat
menyelesaikan masalah-masalah lewat adanya penerkaan walaupun penerkaan tersebut pada umumnya lebih akurat
dengan memakai heuristik.
5 Tepat atau perkiraan
Jika terdapat banyak algoritma dapat sampai ke solusi yang tepat, ada juga algoritma perkiraan yang mencari perkiraan
terdekat dengan solusi benarnya. Perkiraan tersebut dapat memakai strategi deterministik ataupun acak. Algoritma yang
seperti itu dapat mempunyai nilai lebih untuk banyak permasalahan yang sulit.
6 lgoritma quantum
Berjalan pada model realistik dari komputasi quantum. Istilah tersebut pada umumnya dipakai bagi algoritma yang pada
dasarnya quantum, ataupun memakai fitur-fitur penting dari komputasi quantum seperti belitan quantum atau superposisi
quantum.

Contoh Algoritma
1 Menentukan Apakah Bilangan Tersebut Ganjil atau Genap
Terdapat bilangan yang bernama bilang bulat yaitu 0, 1, -1, 2, dst serta bilangan asli 1, 2, 3, 4, 5, dst. Kedua jenis bilangan
tersebut sering digunakan dalam berhitung. Himpunan bilangan-bilangan bulat dalam buku teks aljabar pada umumnya
dinyatakan dengan lambang "Z" dan himpunan bilangan-bilangan asli dinyatakan dengan lambang "N". Algoritma guna
menentukan apakah bilangan tersebut ganjil atau genap dapat disajikan dengan flowchart seperti dibawah ini :

Bilangan genap merupakan sebuah bilangan bulat yang akan habis atau tidak memiliki sisa jika dibagi 2 (dua). Bilangan ganjil
merupakan sebuah bilangan bulat yang tidak akan habis apabila dibagi 2 (dua).

2.Menghitung Keliling dan Luas Lingkaran


Lingkaran merupakan suatu himpunan dari semua titik-titik pada bidang dalam jarak yang tertentu dan disebut dengan jari-
jari dari titik tertentu dan dapat disebut titik pusat. Lingkaran merupakan contoh dari kurva tertutup sederhana, lingkaran
membagi bidang menjadi bagian luar dan dalam. Algoritma menghitung keliling serta luas lingkaran dapat disajikan dengan
flowchart seperti dibawah ini :
3 Menampilkan Bilangan Ganjil Diantara 10 sampai 30
Bilangan ganjil yang terletak diantara 10 dan 30 11,13,15, dan seterusnya. Namun, yang akan ditampilkan kecuali bilangan
21 dan 27. Jadi output yang diharapkan dari algoritma tersebut adalah bilangan ganjil 10 sampai 30 kecuali bilangan 21 dan
27. Algoritma untuk menampilkan bilangan ganjil antara 10 hingga 30 kecuali bilangan 21 dan 27 disajikan dengan flowchart
dibawah ini :

4 Algoritma tahun Kabisat


Terdapat juga algoritma tahun kabisat. Tahun kabisat merupakan sebuah tahun yang memiliki tambahan 1 hari dan
bertujuan agar kalender dapat sinkron dengan musim tahunan dan keadaan astronomi. Bulan Februari memiliki 29 hari
pada saat tahun kabisat. Tahun yang dapat untuk dibagi dengan 4 adalah tahun kabisat. Algoritma guna menentukan tahun
kabisat jika disajikan dengan flowchart seperti dibawah ini :

5. Menampilkan Bilangan Genap Mullai dari Angka 2 sampai n, Kecuali Bilangan Genap yang Kelipatan 4
Bilangan genap merupakan sebuah bilangan-bilangan bulat yang habis jika dibagi 2. Deret yang ditampilkan dari algoritma
kali ini merupakan deret dari bilangan genap dari 2 hingga ke n kecuali bilangan yang merupakan kelipatan 4. Algoritma
tersebut dapat digambarkan dengan flowchart seperti dibawah ini :
6 Menghitung Harga yang Dibayar Setelah Mendapatkan Sebuah Diskon
Ada juga algoritma yang dapat menghitung jumlah dari biaya yang harus dibayar oleh sang pembeli setelah mendapatkan
sebuah diskon 10% dengan syarat jumlah dari total pembelian tersebut Rp.1.500.000,- Algoritma guna menghitung besaran
biaya tersebut dapat digambarkan dengan flowchart seperti dibawah ini :

Jumlah barang memiliki sifat yang dinamik sesuai dengan input atau masukkan dari user. Apabila jumlah total dari harga
tersebut kurang 1500000 maka tidak mendapatkan sebuah diskon.

7 Mencari Maks dan Min dari suatu Deret Bilangan


Terdapat juga sebuah algoritma guna mencari nilai maks serta min dari suatu n deret bilangan yang dimasukkan atau
diinput oleh user. Algoritma tersebut dapat disajikan dengan flowchart seperti dibawah ini :
8 Kalkulator Sederhana dari 2 Bilangan
Terdapat sebuah algoritma sebagai kalkulator sederhana untuk operasi penjumlahan, perkalian, pembagian, dan
pengurangan. Kalkulator sederhana ini hanya dapat melakukan perhitungan dari 2 bilangan yang diinput oleh user.
Algoritma guna menghitung 2 bilangan dapat digambarkan dengan flowchart seperti dibawah ini :

9 Menghitung Beberapa Angka dari Suatu Bilangan


Pada flowchart kali ini mengenai sebuah algoritma untuk menghitung beberapa angka dari suatu bilangan yang dimasukkan
atau diinput oleh user. Berikut flowchart algoritma tersebut :
10 Membalik Sebuah Kalimat
Seperti yang kita ketahui sebelumnya tentang pengertian algoritma, bahwa algoritma juga dapat untuk menampilkan
sebuah kalimat namun dengan urutan yang terbalik. Misalkan "woocara" dibalik menjadi "aracoow". Struktur data yang
digunakan ialah Stack. Untuk membalik sebuah bilangan, huruf dari kalimat kita input dalam stack dengan menggunakan
metode Push. Setelah stack tersebut sudah terisi, maka output kembali dengan memakai metode Pop. Pada algoritma
membalik sebuah kalimat, adanya penggunaan struktur data stack diimplementasikan ke array. Dalam implementasinya ke
array tersebut, kita harus terlebih dahulu menyiapkan sebuah array dengan memiliki panjang yang sama dengan jumlah
huruf yang ada dalam kalimat yang akan dibalik tersebut. Pada gambar flowchart dibawah ini, terdapat tiap huruf dari
kalimat yang diinput pada array dengan index ke-0 hingga ke-n dengan memakai metode push.

Kemudian huruf tersebut akan mengeluarkan kata mulai dari index ke-n hingga index ke-0.
Itulah pengertian algoritma, bentuk dasar algoritma, klasifikasi algoritma, dan contoh algoritma. Algoritma sangat
diperlukan untuk mengolah data yang ada di komputer.

You might also like