Selasa, 31 Maret 2015

PEMROGRAMAN DASAR ALGORITMA

Pengertian Algoritma

Kata Algoritma berasal dari nama seorang ilmuan asal Persia, Abu Ja’far Mohammed lbn Musa Al – Khowarizmi yang menulis kitab ” Al Jabr Wal- Muqabala ”( rules of restoration and reduction ) , 825 M. Abu Ja’far Mohammed mengartikan algoritma sebagai seperangkat instruksi yang berurutan dari awal sampai selesai.
Pengertian Algoritma lainnya menurut Moh Sjukani, dalam bukunya “Dari Algoritma dan Struktur Data dengan C, C++, dan Java ” adalah sebuah alur pemikiran dalam memecahkan suatu pekerjaan yang dituangkan secara tertulis. Algoritma dapat berupa kalimat, gambar, atau table tertentu. Algoritma merupakan sebuah pemikiran, artinya dimungkinkan adanya algoritma yang berbeda dari setiap orang.
Berdasarkan penjelas di atas, dapat disimpulkan bahwa Algoritma adalah seperangkat alur instruksi dari awal sampai selesai yang bertujuan untuk memecahkan sesuatu, dapat berupa kalimat, gambar, ataupun table tertentu dan bersifat logis ( bernilai salah atau benar )
Komponen teks algoritma dalam pemrograman procedural dapat berupa :
  • Instruksi dasar seperti input/output, assignment
  • Sequence (runtutan)
  • Analisa kasus
  • Perulangan
Contoh dari Algoritma sederhana :
Proses mengirim surat :
  1. Mulai Menulis Surat
  2. Masukan surat dalam amplop
  3. Tempelkan perangko pada amplop
  4. Tuliskan alamat tujuan dan pengirim surat
  5. Pergi ke kantor Pos dengan membawa surat
  6. Masukan surat pada Bis Surat.
  7. Selesai.

Hubungan Manusia, Algoritma dan Komputer

Komputer merupan sebuah alat yang diciptakan untuk membantu manusia dalam menyelesaikan pekerjaannya. Untuk itu harus ada hubungan komunikasi antara manusia dengan komputer. Bagaimana hubungan komunikasi ini dapat terjadi?
Manusia berkomunikasi dengan komputer melalui dengan cara memberikan seperangkat perintah kepada komputer berupa instruksi – instruksi dalam bentuk pembuatan program. Agar komputer mengerti intruksi – instruksi tersebut, diperlukan sebuah bahasa pemrograman.
Dapat disimpulkan bahwa bahasa pemrograman yang diinput oleh manusia ke komputer adalah salah satu contoh dari algoritma. Algoritma yang baik apabila manusia dapat menginput bahasa pemrograman dari awal sampai selesai ke komputer sehingga perintah tersebut dapat dijalankan dengan benar ( output ).
Bahasa pemrograman sangat bermacam-macam, seperti C, C++, Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++, Visual Basic, Visual Basic for Application dan masih banyak bahasa lainnya. Dari berbagai bahasa pemrograman cara memberikan instruksinya berbeda-beda namun bertujuan menghasilkan output yang sama .
Go Top-TOC

KARAKTERISTIK ALGORITMA

Algoritma komputer memiliki beberapa karakteristik yang harus dipenuhi agar menjadi algoritma yang baik. Karakteristik itu antara lain:
  • Presisi. Langkah langkah penyelesaian masalah dalam algoritma haruslah secara presisi (tepat) dinyatakan, tidak mengandung ambiguitas.
  • Keunikan. Hasil pertengahan dalam tiap langkah eksekusi suatu algoritma didefinisikan secara khas dan merupakan pengolahan dari hasil eksekusi langkah sebelumnya.
  • Keterbatasan. Algoritma harus terbatas dan berhenti pada suatu titik setelah semua ekesekusi dilaksanakan.
  • Input. Algoritma menerima input.
  • Output. Algoritma menghasilkan output.
  • General. Algoritma berlaku untuk suatu kumpulan input tertentu.

Notasi Algoritma

Dalam suatu penulisan algoritma terkadang kita sulit untuk mengerti dan memahami maksud dari algoritma tersebut. Selain itu juga kita sulit untuk menuliskan algoritmanya. Untuk itu agar mempermudahnya dapat dilakukan notasi – notasi algoritma. Notasi algoritma merupakan rancangan penyelesaian masalah (algoritma) yang dituliskan ke dalam notasi (cara penulisan khusus).
Notasi algoritma yang sering dijumpai ada 3 macam yaitu :
  1. Notasi deskriptif,

    yaitu dengan cara menuliskan langkah-langkah penyelesaian masalah dengan kalimat-kalimat yang jelas dan deskriptif disertai dengan urutan (nomor urut) yang jelas. Selain itu juga Dengan notasi ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas. Notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
  2. Notasi bagan alir (flow chart),

    yaitu algoritma menggunakan bagan alir dengan memanfaatkan bentuk-bentuk geometri seperti persegi panjang, jajaran genjang, lingkaran dan sebagainya. Sama halnya dengan notasi deskriptif, notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
    Simbol – symbol yang digunakan dalam penyusunan flowchart adalah :
KeteranganLambang
Mulai/selesai (terminator)
Aliran data
Input/Output
Proses
Percabangan (Decision)
Pemberian nilai awal suatu variabel (Preparation)
Memanggil Prosedur/Fungsi (Call)
Sambungan di halaman yang sama (Connector)
Sambungan di halaman lain (Off Page Connector)
Dokumen atau beberapa dokumenatau 
Tampilan (Display)
Input Manual
Operasi Manual
Data tersimpan
Penyimpanan Data
Proses berurutan (Sequence Process)
Pengulangan
  1. Notasi pseudo-code,

    yaitu notasi algoritma yang praktis dan mirip dengan bahasa pemrograman tingkat tinggi seperti Pascal. Banyak notasi pseudo-code yang digunakan oleh para ahli komputer dan berbeda-beda sehingga tidak ada aturan baku dalam penulisan pseudo-code ini, tetapi yang paling banyak digunakan dalam algoritma pemrograman adalah yang mendekati bahasa pascal. Keuntungan menggunakan notasi pseudo code adalah kemudahan mengkonversinya lebih tepat yang disebut mentranslasi ke notasi bahasa pemrograman, karena terdapat korespondensi antara setiap pseudo code dengan notasi bahasa pemrograman. Pseudo-code adalah bahasa buatan yang membantu programmer mengembangkan algoritma. Pseudo-code mirip dengan bahasa sehari-hari (Bahasa Inggris atau Bahasa Indonesia, sebaiknya menggunakan bahasa Inggris agar mudah dipahami banyak orang). Program pseudocede tidak dijalankan oleh komputer, tetapi dipergunakan untuk membantu programmer dalam mengembangkan program sebelum menulisnya ke dalam bahasa pemrograman tertentu , misalnya C++, VB, Java, VBA, dan lain sebagainya.
    Penerapan Pseudo-code dalam algoritma ada 3 (tiga) macam, yaitu :
    1. Struktur Berurutan
      Contoh 1:
    Bahasa Indonesia Terstruktur
    Baca data Jam-kerja
    Hitung Gaji adalah Jam-kerja dikalikan Tarif
    Tampilkan Gaji
    Pseudocode
    Baca data Jam-kerja dari keyboard
    Hitung Gaji = Jam-kerja * Tarip
    Tampilkan Gaji di monitor
    Pseudocode dapat ditulis lebih terinci didasarkan pada suatu bahasa pemrograman tertentu.
    Bahasa Pemrograman BASIC.
    Read Jam-kerja
    Let Gaji = Jam-kerja * Tarip
    Print Gaji
Contoh 2:
Bahasa Indonesia Terstruktur
Baca data Panjang dan Lebar Persegi Panjang
Hitung Luas Persegi Panjang adalah Panjang dikalikan Lebar
Tampilkan Luas
Pseudocode
Baca Panjang Persegi Panjang dari keyboard
Baca Lebar Persegi Panjang dari keyboard
Hitung Luasi = Panjang Persegi Panjang * Lebar Persegi Panjang
Tampilkan Luas di monitor
Bahasa Pemrograman JAVA.
Program hitung luas persegi panjang ;
Var Panjang : Integer;
Lebar : Integer;
Luas : Integer;
Begin
Writeln(“Panjang Persegi Panjang :”);
Read(Panjang);
Writeln(“Lebar Persegi Panjang :”);
Read(Lebar);
Luas:= Panjang * Lebar;
Writeln(“Luasnya”, Luas);
End.
  1. Struktur Keputusan (Decision Structure)
    Decision Structure (struktur keputusan) atau Selection Structure (struktur seleksi) terdiri atas :
    1. If – Then
    2. If – Then – Else
    3. Select Case
    Contoh :
    Deskrisi Permasalahan: Amir ujian ABC, jika nilainya lebih dari 60, maka mendapat status atau keterangan PASS selain itu FAIL
Bahasa Indonesia Terstruktur
Baca nilaiABC
Jika Hitung Luas Persegi Panjang adalah Panjang dikalikan Lebar
Tampilkan Luas
Pseudocode
Baca NilaiABC dari keyboard
Remark adalah PASS atau FAIL
Jika Remark lebih Besar atau sama dengan 55 maka Remark sama dengan PASS
Jika Tidak Maka Remark sama dengan FAIL
Tampilkan NilaiABC dan Remark di monitor
Bahasa Pemrograman VBA.
Sub PassAtauFail()
Dim NilaiABC As Integer
Dim Remark As String
NilaiABC = InputBox(“Nilai ABC :”)
If NilaiABC >= 55 Then
Remark = ” PASS ”
Else
Remark = ” FAIL ”
End If
MsgBox “Nilai ABC: ” & NilaiABC & ” adalah ” & Remark
End Sub
  1. Struktur Pengulangan (Looping Structure)
    Bahasa Indonesia Terstruktur
    Tampilkan angka Ganjil dari satu hingga sembilan di monitor
Pseudocode
AngkaAwal = 1
Remark adalah PASS atau FAIL
Jika Remark lebih Besar atau sama dengan 55 maka Remark sama dengan PASS
Jika Tidak Maka Remark sama dengan FAIL
Tampilkan NilaiABC dan Remark di monitor
Bahasa Pemrograman VBA.
Sub TampilkanGanjil()
AngkaAwal = 1
While AngkaAwal <= 9
MsgBox AngkaAwal
AngkaAwal = AngkaAwal + 2
Wend
End Sub
Pada pseudocode juga terdapat beberapa aturan penulisan agar pseudocode mudah dipahami dan dimengerti oleh para pemrogram. Aturan penulisan tersebut antara lain :
  • Tulis satu pseudocode suatu instruksi pada satu baris.
  • Pisahkan modul-modul atau kelompok pseudocode instruksi dengan memberikan spasi beberapa baris untuk mempermudah pembacaan.
  • Bedakan bentuk huruf dalam penulisan pseudocode dimana pseudocode instruksi ditulis dengan huruf Besar, sedangkan komentar atau variabel dalam huruf Kecil.
  • Berikanlah tabulasi yang berbeda untuk penulisan pseudocode instruksi-instruksi yang berada dalam kalang (loop) atau struktur kondisional.
  • Lakukan pembatasan jumlah baris pseudocode instruksi setiap modulnya, misalnya 50-75 baris instruksi per modul, sehingga terlalu panjang.

Tidak ada komentar:

Posting Komentar