Senin, 24 Oktober 2016

Struktur Algoritma



STRUKTUR DASAR ALGORITMA PEMROGRAMAN


Algoritma adalah susunan untuk memecahkan suatu masalah atau untuk mencapai tujuan tertentu. Penemu algoritma yaitu Abu Abdullah Muhammad Bin Musa Al-Kwarizmi lahir tahun 730-an , ia meninggal tahun 850. Beliau dianggap sebagai pencetus pertama algorita karena  didalam buku tersebut Abu Ja’far menjelaskan langkah-langkah dalam menyelesaikan berbagai persoalan aritmetika (aljabar).
Kata algoritma diambil dari kata al-kwarizmi yang kemudian berubah menjadi algorismi menjadi algorithm.

A.      Ciri Algoritma
DONALD E.KNUTH, sebagai penulis beberapa buku algoritma Abad XX, menyatakan bahwa ada beberapa ciri algoritma yaitu:
Ø  Algoritma mempunyai awal dan akhir, suatu program algoritma harus berhenti setelah mengerjakan serangkaian tugas. Dengan kata lain ,suatu algoritma memiliki langkah yang terbatas.
Ø  Setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda,tidak membingungkan (not ambiguous).
Ø  Memiliki masukan (input) atau kondisi awal.
Ø  Memiliki keluaran (output) atau kondisi akhir.
Ø  Algoritma harus efektif,bila diikuti benar-benar maka akan menyelesaikan persoalan.

B.       Contoh Algoritma dalam kehidupan sehari-hari
·         Bangun tidur.
·         Membersihkan kamar tidur.
·         Kemudian mandi.
·         Pergi kedapur.
·         Menyiapkan sarapan.
·         Lalu makan.

C.      Sifat Algoritma

§  Input adalah suatu algoritma memiliki input atau kondisi awal sebelum dilaksanakan, bias berupa nilai-nilai peubah yang diambil dari himpunan khusus.

§  Output adalah suatu algoritma akan menghasilkan output setelah dilaksanakan ,atau algoritma akan mengubah kondisi awal menjadi kondisi akhir, dimana nilai output diperoleh dari nilai input yang telah diperoses melalui algoritma.

§  Definiteness adalah langkah-langkah yang dituliskan dalam algoritma terdefinisi dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma.

§  Finiteness adalah suatu algoritma harus memberi kondisi akhir atau output setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap kondisi awal atau input yang diberikan .

§  Effectiveness adalah setiap langkah dalam algoritma bisa dilaksanakan dalam suatu selang waktu tertentu sehingga pada akhirnya didapatkan solusi sesuai yang diharapkan.

§  Generality adalah langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang diberikan ,tidak hanya untuk himpunan tertentu.

D.           Struktur Algoritma

Salah satu struktur yang sering dijadikan patokan adalah sebagai berikut.

*   Bagian Kepala (Header) yaitu memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis.

*   Bagian Deklarasi (Definisi Variabel) yaitu memuat definisi nama variabel ,nama tetapan , nama prosedur , nama fungsi , tipe data yang akan digunakan dalam algoritma.

*   Bagian Deskripsi (Rincian Langkah) yaitu memuat langkah-langkah penyelesaian masalah, termasuk beberapa perintah seperti baca data, tampilkan, ulangi, yang mengubah data input menjadi output.

E.            Flowcharting
Flowcharting adalah untaian symbol gambar (chart) yang menunjukan aliran (flow) dari proses terhadap data.

1.        Symbol – symbol flowchat:

§  Terminator sebagai symbol “start” atau “end” untuk memulai atau mengakhiri flowchat.

§  Input atau Output untuk menuliskan proses menerima data atau mengeluarkan data.


§  Proses untuk menuliskan proses yang diperlukan misalnya operasi aritmatika.

§  Conditional atau Desition untuk menyatakan proses yang membutuhkan keputusan.


§  Preporotion  untuk memberikan nilai awal.

§  Arrow sebagai penunjuk arah dan alur proses

.
§  Conector (on-page) untuk menyatakan beberapa arrow.

§  Conector (off-page) untuk menghubungkan flowchat yang harus digambarkan pada halaman yang berbeda,biasanya diberi nomor sebagai penanda misalnya angka 1.


§  Display untuk menampilakan data kemonitor.

2.      Gambar- gambar Simbol 


A.      Tipe Data

Tipe dasar adalah tipe data yang disediakan oleh setiap bahasa pemrograan ,antara lain: bilangan bulat (integer) ,bilangan biasa (real) ,bilangan tetap (const) ,karakter (character atau char) ,logic (logic aatau boolean). Tipe data bentukan adalah tipe data yang dibentuk dari kombinasi tipe data dasar antara lain larik (array), rekaman (record), string (string).

B.       Tipe Dasar

a)   Bilangan Bulat(Integer) yaitu bilangan atau angka yang tidak memiliki titik decimal atau pecahan.

b)   Bilangan Biasa (Real) yaitu bilangan atau angka yang bias memiliki titik decimal atau pecahan .

c)   Biilangan Tetap (Const) yaitu  tipe bilangan ,bernila bulat maupun tidak ,yang nilainya tidak berubah selama algoritma dilaksanakan.
d)  Karacter (Character) yaitu data tunggal yang mewakili semua huruf ,symbol baca, dan symbol angka yang tidak dapat dioperasikan secara matematis.

e)   Logic(Logical) yaitu tipe data yang digunakan untuk memberi nilai pada hasil pembandingan atau kombinasi pembandingan.

C.     Tipe Bentukan

v Array (Larik) yaitu  tipe data yang merupakan wadahan untuk menampung nilai-nilai data yang sejenis. Kumpulan bilangan bulat adalah array integer, kumpulan bilangan tidak bullat adalah array real.

v String  yaitu tipe data dasar bentukan yang merupakan deretan karakter yang membentuk satu kata atau satu kalimat ,yang biasanya diapit oleh dua tanda kutip.


v Record (Rekaman) yaitu merupakan wadah untuk menampung elemen data yang tipenya tidak perlu sama dengan tujuan untuk mewakili satu jenis objek.

D.    Variabel yaitu nama yang mewakili suatu elemen data seperti : jenkel untuk (jenis kelamin), ttl( tempat tanggal lahir).

Tidak ada komentar:

Posting Komentar