Asal usul kata algoritma yaitu dari Al khuwarizmi->Algorism->Algorithm->Algoritma.
Abu Ja'far Mohammed ibn-Musa Al-Khwarizmi di buku : Al Jabar Wal Muqabala (Pemugaran dan pengurangan). Definisi Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis.
Logis :
- Sesuai dengan logika
- Benar menurut penalaran
- Masuk akal
Pertimbangan algoritma :
- Harus benar
- Hasil yang dicapai
- Efisiensi
- Output sesuai yang dikehendaki
- Harus mamapu memberikan hasil yang sedekat mungkin dengan nilai sebenarnya
- Efisiensi waktu dan memori
"setiap orang dapat membuat algoritma yang berbeda untuk menyelesaikan masalah"
Contoh algoritma sehari-hari :
No
|
Proses
|
Algoritma
|
Contoh
Langkah dalam Algoritma
|
1
|
Membuat Kue
|
Resep Kue
|
Masukan telur dalam
wadah, kocok hingga
mengembang
|
2
|
Membuat pakaian
|
Pola pakaian
|
Gunting kain dari
pinggir kiri bawah ke
arah kanan sejauh 5 cm
|
3
|
Merakit mobil tamiya
|
Panduan merakit
|
Sambungkan komponen A
dengan komponen B
|
4
|
Kegiatan sehari-hari
|
Jadwal harian
|
Pukul 06.00 : mandi pagi
Pukul 07.00 : berangkat kuliah
|
5
|
Mengisi voucher HP
|
Panduan pengisian
|
Tekan 888
Masukkan nomor voucher
|
Pemroses :
- Membuat kue -> koki / chef
- Membuat pakaian -> penjahit
- Memainkan lagu -> pianis
Pemroses harus
- Mengerti setiao langkah dalam algoritma
- Mengerjakan operasi yang bersesuaian dengan langkah tersebut
Perbedaan algoritma, program dan bahasa :
- Algoritma merupakan metode & tahapan sistematis
- Program merupakan kumpulan pernyataan komputer
- Bahasa pemrograman merupakan bahasa untuk berinteraksi manusia dengan komputer
Bahasa Pemrograman
- Bahasa mesin (Low Level Language)
- Assembly (Medium Level Language)
- Bahasa C, pascal, basic, dll (High Level Language)
Formula :
Algoritma + Bahasa = Program
Ada beberapa cara menerjemahkan dalam bahasa program yaitu :
- Interpreter menerjemahkan program baris per baris artinya suatu baris akan dieksekusi, maka baris tersebut diterjemahkan dulu ke bahasa mesin. contohnya : bahasa basic
- Compiler menerjemahkan semua perintah kemudian menjalankannya
- Interpreter & Compiler merupakan gabungan keduanya
Ada beberapa cara untuk menuliskan algoritma
1. Menggunakan kata-kata
2. Menggambar diagram/flowchart
3. Menuliskan dalam bentuk pseudocode
Contoh masalah :
Ada dua buah bejana yaitu bejana A dan B masing-masing memiliki isi air, bagaimana algoritma untuk menukarkan kedua isi tersbut
dengan menggunakan kata-kata :
Algoritma TukarIsiBejana
Diberikan dua buah bejana, A dan B; bejana A berisi larutan berwarna merah, bejan B berisi larutan berwarna biru. Pertukarkan isi kedua bejana itu sedemikian sehingga bejan A berisi larutan berwarna biru dan bejan B berisi larutan berwarna merah.
Deskripsi:
Tuangkan larutan dari bejan A ke dalam bejana C.
Tuangkan larutan dari bejan B ke dalam bejana A.
Tuangkan larutan dari bejan C ke dalam bejana B.
Dengan menggunakan flowchart
Dengan Pseudocode :
“Satu cara untuk mewujudkan (atau kadang-kadang melakukan kodifikasi) suatu algoritma adalah dengan penulisan pseudocode”
Pseudocode :
- Tidak menggunakan sintaksis bahasa pemrograman tertentu
- Tidak ada aturan baku dalam penulsiannya
- Beberapa penulis sedikit meminjam sintaks bahasa tertentu
Algorithm LargestNumber
Input: A non-empty list of numbers L.
Output: The largest number in the list L.
largest ← -∞
for each item in the list L, do
if the item > largest, then
largest ← the item
return largest
Regular code (written in PHP):
<?php
if ($foo == "bar")
{
$yesFoo = true;
}
else
{
$yesFoo = false;
}
?>
Pseudocode:
If the value of foo is equal to bar
then make "yesFoo" true
otherwise, make "yesFoo" false
Namun sekarang ini untuk metode pseudocode sangat jarang digunakan. Sekian dan terimakasih
sumber : Tenia Wahyuningrum, SKom., MT
0 comments:
Post a Comment