Anda di halaman 1dari 6

Moh.

Ikhsanudin
195060701111012 / B
Algoritma
Algoritma adalah urutan dari beberapa langkah logis dan sistematis untuk memecahkan suatu masalah. Hal
ini ditekankan pada urutan langkah logis, yang artinya algoritma harus mengikuti suatu urutan tertentu, dan
langkah-langkahnya tidak boleh diloncat atau diacak. Algoritma digunakan untuk melakukan penghitungan,
penalaran otomatis, serta mengolah data pada komputer dengan menggunakan software. Dalam algoritma
terdapat rangkaian terbatas dari beberapa intruksi untuk menghitung suatu fungsi yang jika dieksekusi dan
diproses akan menghasilkan output, lalu berhenti pada kondisi akhir yang sudah ditentukan.

Algoritma dapat disajikan ke dalam 2 bentuk, yaitu bentuk tulisan/bahasa dan bentuk gambar. Penyajian
algoritma dalam bentuk bahasa/tulisan harus memakai sebuah bahasa yang dapat 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.

Menurut Donald E. Knuth dalam bukunya yang berjudul The Art Of Computer Programming, ada lima ciri
penting algoritma yaitu 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.

Adapun bentuk-bentuk dasar algoritma ada 3 yaitu:

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

2. 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:

Siapkan jemuran -> ambil satu pakaian yang nantinya akan dijemur -> peras pakaian tersebut terlebih dahulu
-> letakkan pakaian tersebut pada tiang jemuran -> ulangi langkah dari 2 sampai 4 hingga pakaian habis.
3. 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 :
Membuat Mie Goreng

Siapkan mie goreng instant -> apakah mie instan ada? -> jika tika tidak, beli di warung -> keluarkan mie beserta
bumbu-bumbunya -> siapkan piring -> lihat kondisi piring, jika kotor dicuci dulu -> jika bersih siap digunakan
-> buka bumbu-bumbunya -> letakkan didalam piring -> siapkan panci -> lihat kondisi panci, jika kotor dicuci
dulu -> jika bersih panci dengan air secukupnya -> letakkan panci diatas kompor -> nyalakan kompor -> tunggu
hingga air mendidih -> jika sudah mendidih, masukkan mie -> tunggu hingga mie matang -> setelah mie
matang, matikan kompor -> siapkan saringan, lihat kondisi saringan jika kotor dicuci dulu -> tuang mie ke
saringan, tunggu sampai airnya tiris -> masukkan kedalam piring -> siapkan sendok dan garpu, lihat kondisinya
jika kotor dicuci dulu -> jika bersih aduk mie menggunakan sendok dan garpu -> mie goreng siap dihidangkan.

Adapun klasifikasi algoritma berdasarkan implementasinya adalah sebagai berikut:

Rekursi dan Iterasi

Algoritma rekursi adalah algoritma yang memanggil dirinya sendiri secara berulang-ulang. Sedangkan
algoritma iterasi adalah algoritma yang memakai konstruksi berulang dimana terkadang terdapat data
tambahan pada struktur yang dibuat.

Logical

Algoritma logical adalah algoritma yang dapat memposisikan diri seperti logika deduksi yang terkontrol.

Serial, Parallel, atau Terdistribusi

Algoritma serial adalah algoritma yang menjalankan satu instruksi saja. Algoritma parallel adalah algoritma
yang dapat mengerjakan suatu perintah dalam waktu yang sama. Sedangkan algoritma terdistribusi adalah
algoritma yang memakai banyak mesin yang terkoneksi dengan jaringan.

Deterministik atau Non-deterministik

Algoritma deterministik adalah algoritma yang dapat memecahkan suatu masalah dengan keputusan yang
tepat. Sedangkan algoritma Non-deterministik adalah algoritma yang memecahkan suatu masalah dengan
metode penerkaan.

Tepat atau Perkiraan

Suatu algoritma mungkin saja memiliki solusi yang tepat, atau setidaknya mempunyai perkiraan yang
mendekati solusi yang benar. Dalam merumuskannya dapat dilakukan dengan strategi deterministic ataupun
secara acak.

Algoritma Quantum

Algoritma quantum adalah algoritma yang menggunakan model realistik dari komputasi quantum.
Adapun contoh penerapan algoritma dasar pemrograman adalah sebagai berikut:

1. Algoritma Narasi

Contoh: Algoritma Kelulusan_mhs

Persoalan: Diberikan data berupa nama dan nilai mahasiswa. Jika nilai mahasiswa lebih besar atau sama
dengan 60 maka mahasiswa tersebut dinyatakan lulus. Sedangkan jika nilainya lebih kecil dari 60, maka
mahasiswa tersebut dinyatakan tidak lulus.

Algoritmanya akan seperti berikut:


baca nama dan nilai mahasiswa.
jika nilai >= 60 maka
keterangan = lulus
tetapi jika
keterangan = tidak lulus.
tulis nama dan keterangan

2. Algoritma Pseudo Code

Contoh; Algoritma Kelulusan_mhs

Persoalan: Diberikan data berupa nama dan nilai mahasiswa. Jika nilai mahasiswa lebih besar atau sama
dengan 60 maka mahasiswa tersebut dinyatakan lulus. Sedangkan jika nilainya lebih kecil dari 60, maka
mahasiswa tersebut dinyatakan tidak lulus.

Deklarasi dari tipe datanya akan seperti berikut:


Nama = string
Nilai = integer
Keterangan = string
Algoritmanya akan seperti berikut:
read (nama, nilai)
if nilai >= 60 then
keterangan = ‘lulus’
else
keterangan = ‘tidak lulus’
write (nama, keterangan)

3. Algoritma Flowchart

Berikut ini adalah beberapa contoh dari algoritma flowchart. Fungsi flowchart pada pemrograman adalah
untuk memudahkan programmer ketika merancang sebuah program komputer. Ini dia contoh-contohnya:

Flowchart menghitung luas lingkaran

Algoritma flowchart di bawah ini adalah contoh flowchart untuk menghitung luas lingkaran
dengan rumus L = πr2:

Algoritma:
Program dimulai
Tentukan nilai phi dan r
Hitung L = phi x r2
Cetak Hasil L
Program Selesai
Moh. Ikhsanudin
195060701111012 / B
Algoritma
Algoritma adalah urutan dari beberapa langkah logis dan sistematis untuk memecahkan suatu masalah. Hal
ini ditekankan pada urutan langkah logis, yang artinya algoritma harus mengikuti suatu urutan tertentu, dan
langkah-langkahnya tidak boleh diloncat atau diacak. Algoritma digunakan untuk melakukan penghitungan,
penalaran otomatis, serta mengolah data pada komputer dengan menggunakan software. Dalam algoritma
terdapat rangkaian terbatas dari beberapa intruksi untuk menghitung suatu fungsi yang jika dieksekusi dan
diproses akan menghasilkan output, lalu berhenti pada kondisi akhir yang sudah ditentukan.

Algoritma dapat disajikan ke dalam 2 bentuk, yaitu bentuk tulisan/bahasa dan bentuk gambar. 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.

Adapun bentuk-bentuk dasar algoritma ada 3 yaitu:

1. Algoritma Sekuensial (Sequence Algorithm)

Sequence algorithm atau algoritma sekuensial merupakan algoritma yang langkah-langkahnya secara urut dari
awal hingga akhir.

2. Algoritma Perulangan (Looping Algorithm)

Looping algorithm atau algoritma perulangan merupakan suatu algoritma yang menjalankan beberapa
langkah tertentu secara berulang-ulang atau looping.

3. Algoritma Percabangan atau Bersyarat (Conditional Algorithm)

Conditional algorithm atau algoritma bersyarat merupakan algoritma yang menjalankan langkah berikutnya
apabila terdapat syarat yang sudah dapat dipenuhi.

Adapun klasifikasi algoritma berdasarkan implementasinya adalah sebagai berikut:

Rekursi dan Iterasi

Algoritma rekursi adalah algoritma yang memanggil dirinya sendiri secara berulang-ulang. Sedangkan
algoritma iterasi adalah algoritma yang memakai konstruksi berulang dimana terkadang terdapat data
tambahan pada struktur yang dibuat.

Logical

Algoritma logical adalah algoritma yang dapat memposisikan diri seperti logika deduksi yang terkontrol.

Serial, Parallel, atau Terdistribusi

Algoritma serial adalah algoritma yang menjalankan satu instruksi saja. Algoritma parallel adalah algoritma
yang dapat mengerjakan suatu perintah dalam waktu yang sama. Sedangkan algoritma terdistribusi adalah
algoritma yang memakai banyak mesin yang terkoneksi dengan jaringan.
Deterministik atau Non-deterministik

Algoritma deterministik adalah algoritma yang dapat memecahkan suatu masalah dengan keputusan yang
tepat. Sedangkan algoritma Non-deterministik adalah algoritma yang memecahkan suatu masalah dengan
metode penerkaan.

Tepat atau Perkiraan

Suatu algoritma mungkin saja memiliki solusi yang tepat, atau setidaknya mempunyai perkiraan yang
mendekati solusi yang benar. Dalam merumuskannya dapat dilakukan dengan strategi deterministic ataupun
secara acak.

Algoritma Quantum

Algoritma quantum adalah algoritma yang menggunakan model realistik dari komputasi quantum.

Menurut Donald E. Knuth dalam bukunya yang berjudul The Art Of Computer Programming, ada lima ciri
penting algoritma yaitu 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.

Adapun contoh penerapan algoritma dasar pemrograman adalah sebagai berikut:

1. Algoritma Narasi

Contoh: Algoritma Kelulusan_mhs

Persoalan: Diberikan data berupa nama dan nilai mahasiswa. Jika nilai mahasiswa lebih besar atau sama
dengan 60 maka mahasiswa tersebut dinyatakan lulus. Sedangkan jika nilainya lebih kecil dari 60, maka
mahasiswa tersebut dinyatakan tidak lulus.

Algoritmanya akan seperti berikut:


baca nama dan nilai mahasiswa.
jika nilai >= 60 maka
keterangan = lulus
tetapi jika
keterangan = tidak lulus.
tulis nama dan keterangan

2. Algoritma Pseudo Code

Contoh; Algoritma Kelulusan_mhs


Persoalan: Diberikan data berupa nama dan nilai mahasiswa. Jika nilai mahasiswa lebih besar atau sama
dengan 60 maka mahasiswa tersebut dinyatakan lulus. Sedangkan jika nilainya lebih kecil dari 60, maka
mahasiswa tersebut dinyatakan tidak lulus.

Deklarasi dari tipe datanya akan seperti berikut:


Nama = string
Nilai = integer
Keterangan = string
Algoritmanya akan seperti berikut:
read (nama, nilai)
if nilai >= 60 then
keterangan = ‘lulus’
else
keterangan = ‘tidak lulus’
write (nama, keterangan)

3. Algoritma Flowchart

Berikut ini adalah beberapa contoh dari algoritma flowchart. Fungsi flowchart pada pemrograman adalah
untuk memudahkan programmer ketika merancang sebuah program komputer. Ini dia contoh-contohnya:

Flowchart menghitung luas lingkaran

Algoritma flowchart di bawah ini adalah contoh flowchart untuk menghitung luas lingkaran dengan rumus L =
πr2:

Algoritma:
Program dimulai
Tentukan nilai phi dan r
Hitung L = phi x r2
Cetak Hasil L
Program Selesai

Anda mungkin juga menyukai