ALGORITMA PEMROGRAMAN DASAR - TIKNI LIGI

ALGORITMA PEMROGRAMAN DASAR

ALGORITMA PEMROGRAMAN DASAR


Assalamualaikum wr. wb. 
Hai guys! Kali ini saya akan membahas apa itu algoritma di pemrogaman beserta notasi algoritmik nya. Yuk langsung saja kita lihat artikel berikut


source : ShutterStock


Pengertian Algoritma

Prosedur / langkah / tahapan yang logika & sistematis untuk menyelesaikan permasalahan.

-------------------------------------------------------------------------------------------------------------------------

Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik.

Kedua yang harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.

Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut. Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma, tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian, carilah algoritma yang paling efisien dan cepat.




Sejarah

Istilah algoritma berasal dari seorang pengarang berkebangsaan Arab “Abu Ja’far Mohammed ibn Musa al Khowarizmi” (tahun 790-840), yang dikenal sebagai ”Bapak Aljabar”.


Tujuan Algoritma

Memberikan petunjuk langkah-langkah penyelesaian masalah yang mudah dipahami manusia sehingga dapat dibuat penyelesainnya dengan menggunakan program komputer.

Ciri penting algoritma

- Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
- Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas).
- Algoritma memiliki nol atau lebih masukkan.
- Algoritma memiliki nol atau lebih keluaran.
- Algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang - masuk akal).

Notasi Algoritmik

Notasi algoritmik merupakan standard yang dipakai dalam menuliskan teks algoritma.

  • Notasi algoritmik bukan bahasa pemrograman.
  • Notasi algoritmik ini lebih berorientasi kepada detail design dibandingkan coding.
  • Notasi algoritmik ini dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
Notasi Algoritmik selalu terdiri dari 3 bagian:

1. Judul (Header)

Judul adalah bagian teks algoritma tempat mendefinisikan apakah teks tersebut adalah program, procedure, fungsi, modul atau sebuah skema program.

2. Deklarasi / Kamus

Deklarasi / kamus adalah bagian teks algoritma tempat mendefinisikan:

- Nama type
- Nama konstanta
- Nama variable
- Nama fungsi
- Nama procedure

3. Algoritma

Algoritma adalah bagian teks algoritmik yang beerisi instruksi atau pemanggilan aksi yang telah didefinisikan. Komponen teks algoritmik dalam pemrograman procedural dapat berupa:

- Instruksi dasar seperti input/output, assignment
- Sequence
- Analisa kasus
- Pengulangan

Pada setiap bagian tersebut, akan didefinisikan dan dipakai “nama”, atau dituliskan komentar yang berada diantara tanda kurung kurawal. Nama dalam sebuah teks algoritmik adalah sesuatu yang dipakai sebagai identifikasi:

- Modul program, algoritma, skema program, dsb.
- Fungsi
- Procedure
- Type
- Variable
- Konstanta


Notasi Algoritmik ini dapat ditulis dalam bentuk :

- Analisis Deskriptif
- Flowchart
- Pseudo-code

Analisis Deskriptif
      
            adalah notasi algoritmik yang setiap langkah-langkah penyelesaian algoritmanya menggunakan bahasa natural (sebagai contoh kita menggunakan bahasa Indonesia). Biasanya  proses diawali dengan kata kerja seperti ‘baca’, ‘ganti’, ‘hitung’, ‘pindahkan’ dan sebagainya. Sedangkan pernyataan kondisional dapat dinyatakan dengan ‘Jika ... Maka ...’. 

Contoh : Algoritma untuk mencari hasil penjumlahan a dan b, dari penjumlahan dua bilangan tersebut akan menghasilkan total nilai


Notasi ini sangat mudah dimengerti, namun sulit untuk diterjemahkan kedalam bahasa pemrograman.



Flowchart (Bagan Alir)
Flowchart (Bagan Alir) berisi langkah-langkah komputasi yang dituliskan dalam sekumpulan bentuk-bentuk geometri. Masing-masing simbol tersebut menggambarkan suatu proses tertentu.

Berikut merupakan simbol-simbol untuk flowchart:



Dengan masalah yang sama dengan sebelumnya, berikut merupakan penulisan algoritma menggunakan flowchart

Contoh : Algoritma untuk mencari hasil penjumlahan a dan b, dari penjumlahan dua bilangan tersebut akan menghasilkan total nilai


Flowchart cenderung mudah digunakan untuk menyelesaikan yang sederhana, tetapi masih cukup sulit untuk diterjemahkan kedalam bahasa pemrograman.

Pseudo-code

Pseudocode (pseudo = semu / tidak sebenarnya) adalah notasi algoritmik gabungan antara bahasa natural dan bahasa pemrograman. Banyak orang lebih menyukai menuliskan algoritma dalam bentuk ini karena hampir mirip dengan bahasa pemrograman terutama Pascal dan C. Tidak ada bentuk atau aturan baku untuk menuliskan pseudocode, yang terpenting adalah notasinya tidak membingungkan pembaca (dapat dimengerti).

Contoh : Algoritma untuk mencari hasil penjumlahan a dan b, dari penjumlahan dua bilangan tersebut akan menghasilkan total nilai


Pseudocode  lebih praktis dan mudah ditranslasikan ke dalam bahasa pemrograman.



Sekian, semoga bermanfaat



Referensi :
https://andikafisma.wordpress.com/algoritma-dan-pemrograman/
https://hardyhardboy.wordpress.com/2011/09/25/8/
http://luxurygalaxy.blogspot.co.id/2012/09/3-macam-notasi-algoritmik.html
E-book 2_pengantar_alpro.pdf by diyah yustiana
Tio Chandra Hi There, I shared my expereriences here :) Hope You Like It.

0 Response to "ALGORITMA PEMROGRAMAN DASAR"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel