Dasar-dasar Algoritma Pemograman
Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibn
Musa al-Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules
of restoration and reduction) sekitar tahun 825 M.
Algoritma adalah urutan langkah logis tertentu untuk memecahkan
suatu masalah. Hal ini ditekankan padaah. Hal ini ditekankan adala urutan
langkah logis, yang berarti algoritma harus mengikuti suatu urutan tertentu,
tidak boleh melompat-lompat.
Alur pemikiran dalam menyelesaikan suatu pekerjaan yang
dituangkan secara tertulis. Hal pertama yang ditekankan adalah alur pikiran,
sehingga algoritma seseorang dapat juga berbeda dari algoritma orang lain.
Sedangkan penekanan kedua adalah tertulis, yang artinya dapat berupa kalimat,
gambar, atau tabel tertentu.
Definisi Algoritma adalah urutan langkah-langkah logis
penyelesaian masalah yang disusun secara sistematis.
Contoh; Algoritma TUKAR ISI BEJANA
Diberikan dua buah bejana A dan B, bejana A berisi larutan
berwarna merah, bejana B berisi larutan berwarna biru. Pertukarkan isi kedua
bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana
B berisi larutan berwarna merah.
DESKRIPSI :
– Tuangkan larutan dari bejana A ke dalam bejana B
– Tuangkan larutan dari bejana B ke dalam bejana A.
Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran
yang benar. Langkah di atas tidak logis, hasil pertukaran yang terjadi adalah
percampuran kedua larutan tersebut.
Untuk mempertukarkan isi duah bejana, diperlukan sebuah bejana
tambahan sebagai tempat penampungan sementara, misalnya bejana C. Maka
algoritma untuk menghasilkan pertukaran yang benar adalah sebagai berikut :
Algoritma Tukar Isi Bejana
Diberikan dua buah bejana A dan B, bejana A berisi larutan
berwarna merah, bejana B berisi larutan berwarna biru. Pertukarkan isi kedua
bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana
B berisi larutan berwarna merah.
DESKRIPSI :
1. Tuangkan larutan dari bejana A
ke dalam bejana C.
2. Tuangkan larutan dari bejana B
ke dalam bejana A.
3. Tuangkan larutan dari bejana C
ke dalam bejana B.
Ciri Penting Algoritma
1. Algoritma harus berhenti
setelah mengerjakan sejumlah langkah terbatas.Setiap langkah harus
didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas).
2. Algoritma memiliki nol atau
lebih masukkan.
3. Algoritma memiliki nol atau
lebih keluaran.
4. Algoritma harus efektif (setiap
langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang masuk akal).
Dalam bidang komputer, algoritma sangat diperlukan dalam
menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris.
Tanpa algoritma yang dirancang dengan baik maka proses pemrograman akan menjadi
salah, rusak, atau lambat dan tidak efisien. Pelaksana algoritma adalah
Komputer. Manusia dan komputer berkomunikasi dengan cara manusia memberikan
perintah-perintah kepada komputer berupa instruksi-instruksi yang disebut
program. Komputer adalah alat bantu untuk menyelesaikan masalah. Dalam
menyelesaian masalah dengan komputer perlu merumuskan langkah langkah
penyelesaian masalah dalam sekumpulan instruksi. Sekumpulan instruksi yang
dimengerti oleh komputer yang disebut dengan program.
Alat yang digunakan untuk membuat program tersebut adalah bahasa
pemrograman. Bahasa pemrograman dapat dikategorikan dalam :
· Bahasa tingkat tinggi [HLL] :
PASCAL, C, Java, PHP, ASP
· Bahasa tingkat menengah[MLL] :
Assembly
· Bahasa tingkat rendah [LLL] :
Machine Code
Dari berbagai bahasa pemrograman cara memberikan instruksinya
berbeda-beda namun bertujuan menghasilkan output yang sama. Program yang
ditulis dalam bahasa pemrograman akan diterjemahkan ke dalam bahasa mesin
(biner) menggunakan penterjemah.
· Interpreter; Menterjemahkan
baris per baris instruksi [Bahasa Basic]
· Compiler; Menterjemahkan
setelah seluruh instruksi di tulis [Pascal, C]
Belajar memprogram adalah belajar tentang metodologi pemecahan
masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca
dan dipahami. Belajar bahasa pemrograman adalah belajar memakai suatu bahasa,
aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasian
compiler-nya untuk membuat program yang ditulis dalam bahasa itu saja.
Penulisan algoritma tidak tergantung dari spesifikasi bahasa
pemrograman dan komputer yang mengeksekusinya. Notasi algoritma bukan notasi
bahasa pemrograman tetapi dapat diterjemahkan ke dalam berbagai bahasa
pemrograman
NOTASI ALGORITMA NARASI
Contoh; Algoritma Kelulusan_mhs
Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih
besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus. jika nilai
lebih kecil dari 60 maka dinyatakan tidak lulus.
DESKRIPSI :
baca nama dan nilai mahasiswa.
jika nilai >= 60 maka
keterangan = lulus
tetapi jika
keterangan = tidak lulus.
tulis nama dan keterangan
NOTASI ALGORITMA PSEUDOCODE
Contoh; Algoritma Kelulusan_mhs
{diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih
besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan lulus jika
tidak maka dinyatakan tidak lulus}
DEKLARASI :
Nama : string
Nilai : integer
Keterangan : string
DESKRIPSI :
read (nama, nilai)
if nilai >= 60 then
keterangan = ‘lulus’
else
keterangan = ‘tidak lulus’
write(nama, keterangan)
Dalam bidang komputer, algoritma sangat diperlukan dalam
menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris.
Tanpa algoritma yang dirancang dengan baik maka proses pemrograman akan menjadi
salah, rusak, atau lambat dan tidak efisien. Pelaksana algoritma adalah
Komputer. Manusia dan komputer berkomunikasi dengan cara manusia memberikan
perintah-perintah kepada komputer berupa instruksi-instruksi yang disebut
program. Komputer adalah alat bantu untuk menyelesaikan masalah. Dalam menyelesaian
masalah dengan komputer perlu merumuskan langkah langkah penyelesaian masalah
dalam sekumpulan instruksi. Sekumpulan instruksi yang dimengerti oleh komputer
yang disebut dengan program.
Alat yang digunakan untuk membuat program tersebut
adalah bahasa pemrograman. Bahasa pemrograman dapat dikategorikan dalam :
· Bahasa
tingkat tinggi [HLL] : PASCAL, C, Java, PHP, ASP
· Bahasa
tingkat menengah[MLL] : Assembly
· Bahasa
tingkat rendah [LLL] : Machine Code
Dari berbagai bahasa pemrograman cara memberikan
instruksinya berbeda-beda namun bertujuan menghasilkan output yang sama.
Program yang ditulis dalam bahasa pemrograman akan diterjemahkan ke dalam
bahasa mesin (biner) menggunakan penterjemah.
· Interpreter; Menterjemahkan
baris per baris instruksi [Bahasa Basic]
· Compiler; Menterjemahkan
setelah seluruh instruksi di tulis [Pascal, C]
Belajar memprogram adalah belajar tentang metodologi
pemecahan masalah, kemudian menuangkannya dalam suatu notasi tertentu yang mudah
dibaca dan dipahami. Belajar bahasa pemrograman adalah belajar memakai suatu
bahasa, aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasian
compiler-nya untuk membuat program yang ditulis dalam bahasa itu saja.
Penulisan algoritma tidak tergantung dari spesifikasi
bahasa pemrograman dan komputer yang mengeksekusinya. Notasi algoritma bukan
notasi bahasa pemrograman tetapi dapat diterjemahkan ke dalam berbagai bahasa
pemrograman
NOTASI ALGORITMA NARASI
Contoh; Algoritma Kelulusan_mhs
Diberikan nama dan nilai mahasiswa, jika nilai
tersebut lebih besar atau sama dengan 60 maka mahasiswa tersebut dinyatakan
lulus. jika nilai lebih kecil dari 60 maka dinyatakan tidak lulus.
DESKRIPSI :
baca nama dan nilai mahasiswa.
jika nilai >= 60 maka
keterangan = lulus
tetapi jika
keterangan = tidak lulus.
tulis nama dan keterangan
NOTASI ALGORITMA PSEUDOCODE
Contoh; Algoritma Kelulusan_mhs
{diberikan nama dan nilai mahasiswa, jika nilai
tersebut lebih besar atau sama dengan 60 maka mahasiswa tersebut
dinyatakan lulus jika tidak maka dinyatakan tidak lulus}
DEKLARASI :
Nama : string
Nilai : integer
Keterangan : string
DESKRIPSI :
read (nama, nilai)
if nilai >= 60 then
keterangan = ‘lulus’
else
keterangan = ‘tidak lulus’
write(nama, keterangan)
NOTASI ALGORITMA FLOWCHART
Aturan Penulisan Algoritma;
Judul algoritma;Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. Nama sebaiknya singkat dan menggambarkan apa yang dilakukan oleh algoritma tersebut.
Deklarasi; Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama tersebut dapat berupa nama tetapan, peubah, tipe, prosedur dan fungsi.
Deskripsi; Bagian ini berisi uraian langkah-langkah penyelesaian masalah yang ditulis dengan menggunakan notasi yang akan dijelaskan selanjutnya.
Di ambil dari : https://ikhs.wordpress.com/2010/07/26/dasar-dasar-algoritma-pemograman/ dan
eprints.undip.ac.id/18630/1/pertemuan2.pdf
Tidak ada komentar:
Posting Komentar