Dasar-dasar Algoritma

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
Next PostNewer Post Previous PostOlder Post Home

0 comments:

Post a Comment