PENGERTIAN ALGORITMA A. Definisi Algoritma adalah urutan aksi

advertisement
PENGERTIAN ALGORITMA
A. Definisi
Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk
memecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapat dikerjakan
dan mempunyai efek tertentu.
Algoritma dapat dituliskan dengan banyak cara, mulai dari menggunkan bahasa alami
yang digunakan sehari-hari, simbol grafik bagan alir, sampai menggunakan bahasa
pemrograman seperti bahasa Pascal.
Dari sumber lain, algoritma diartikan sebagai urutan langkah-langkah logis penyelesaian
suatu masalah yang disusun secara sistematis. Kata logis di atas merupakan kata kunci dalam
sebuah algoritma. Langkah-langkah di dalam algoritma haruslah logis, ini berarti hasil dari
urutan langkah-langkah tersebut harus dapat ditentukan, benar atau salahnya.
Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer,
algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi
program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa
pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. Secara garis besar,
algoritma adalah urutan langkah-langkah penyelesaian masalah, sedangkan program adalah
realisasi algoritma dalam bahasa pemrograman.
Program ditulis dalam salah satu bahasa pemrograman, dan kegiatan membuat program
disebut pemrograman (programming). Orang yang menulis program disebut pemrogram
(programmer). Tiap-tiap langkah di dalam program disebut pemrogram (programmer). Tiaptiap langkah di dalam program disebut pernyataan (statement) atau instruksi. Jadi, program
tersusun atas deretan instruksi, bila suatu instruksi dilaksanakan, maka operasi-operasi yang
bersesuaian dengan instruksi tersebut dikerjakan oleh komputer. Komputer secara garis besar
tersusun atas empat komponen utama, yaitu piranti masukkan, piranti keluaran, unit pemroses
utama (CPU), dan memori.
Mekanisme kerja keempat komponen tersebut adalah mula-mula program dimasukkan ke
dalam memori komputer, ketika program dilaksanankan (execute), setiap instruksi yang telah
tersimpan di dalam komputer dikirim ke CPU, CPU mengerjakan operasi-operasi yang
bersesuaian dengan instruksi tersebut. Bila suatu operasi memerlukan data, data dibaca di
piranti masukkan, disimpan di dalam memori, lalu dikirim ke CPU untuk operasi yang
memerlukannya tadi. Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke
dalam memori, lalu memori menuliskan keluaran tasi di piranti keluaran (misalkan dengan
mencetaknya ke layar monitor).
B. Fungsi
Dengan algoritma, kita dapat mengatasi masalah dari yang sederhana sampai yang
kompleks sekalipun. Namun, seorang user harus mampu membuat suatu program dengan
menggunakan bahasa yang difahami oleh komputer. Sebelum disajikan dalam bentuk bahasa
pemrogaman, sebaiknya kitamembuat diagram alir (Flow Chart) dan Pseudocode.
Hal ini dimaksudkan agar dapat mempermudah dalam membuat program.Selain itu,
algoritma dapat mengatasi masalah logika dan masalahmatematika dengan cara berurutan,
tetapi kadang-kadang algoritma tidakselalu berurutan, hal ini dikenal dengan proses
percabangan.
C. Kriteria Program Algoritma dalam Bidang Komputer
Pada dasarnya, komputer adalah mesin digital, artinya komputer hanya bisa mengenal
kondisi ada arus listrik (biasanya dilambangkan dengan 1) dan tidak ada arus listrik (biasanya
dilambangkan dengan 0). Dengan kata lain, kita harus menggunakan sandi 0 dan 1 untuk
melakukan pemrogaman komputer. Bahasa pemrogaman yang menggunakan sandi 0 dan 1 ini
disebut bahasa mesin. Karena bahasa mesin sangat susah, maka muncul ide untuk
melambangkan untaian sandi 0 dan 1 dengan singkatan kata yang lebih mudah difahami
manusia biasa disebut dengan mnemonic code. Bahasa pemrogaman yang menggunakan
singkatan kata ini disebut bahasa assembly.
Program algoritma harus komplit, nyata, dan jelas. Meskipun tugas algoritma tidak
menghasilkan solusi, tetapi proses harus berakhir hal ini disebut dengan semi algorithm
(prosedur akan berjalan terus atau biasa disebut dengan perulangan). Intinya kita tidak boleh
menambah masalah, akan tetapi kita harus mampu menyelesaikan masalah untuk mendapat
hasil yang tepat.
D. Pentingnya Algoritma dalam Bahasa Pemrograman
Meskipun sewaktu kita menyusun algoritma kita tidak perlu tahu bahasa pemrograman
apa yang akan digunakan, namun untuk penulisan algoritma yang lebih efisien dan efektif,
maka penggunaan sebagian perintah yang ada di dalam bahasa pemrograman perlu dilakukan
juga.
Adapun perintah bahasa pemrograman yang paling sering digunakan untuk menyusun
algoritma adalah bahasa pemrogrman yang terstrukutur, seperti Pascal, C, SNOBOL, PL/1,
dan sebagainya.
E. Ciri Penting Algoritma
1. Algoritma harus berhenti setelah menjalankan sejumlah langkah terbatas.
2. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (ambiguitas).
3. Algoritma memiliki nol atau lebih masukan.
4. Algoritma memiliki nol atau lebih keluaran.
5. Algoritma harus efektif (setiap langkah sederhana sehingga dapat dikerjakan dalam
waktu yang masuk akal).
F. Notasi Algoritma
1. 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.
·
2. Notasi algoritma dapat berupa:
Uraian kalimat deskriptif (narasi):
Contoh:
Algoritma kelulusan mahasiswa
Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan
60 maka mahasiswa tersenut 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 salah
Keterangan = tidak lulus
Tulis nama dan keterangan.
G. Contoh Algoritma:
 Mengirim surat kepada teman:
1. Tulis surat pada secarik kertas surat
2. Ambil sampul surat
3. Masukkan surat ke dalam sampul
4. Tutup sampul surat dengan perekat
5. Jika kita ingat alamat teman tersebut, maka tulis alamat surat pada sampul
6. Jika tidak ingat, lihat buku alamat, kemudian tulis alamat surat pada sampul
7. Tempel prangko pada sampul
8. Bawa sampul ke kantor pos untuk diposkan
 Menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap:
1. Masukkan sebuah bilangan sembarang
2. Bagi bilangan tersebut dengan 2
3. Hitung sisa hasil bagi pada langkah 2
4. Bila sisa hasil sama dengan 0, maka bilangan itu adalah bilangan genap
5. Jika hasil bagi sama dengan 1, maka bilangan itu adalah bilangan ganjil
Definisi dan Simbol Flowchart
A. PENGERTIAN DASAR FLOWCHART
Flowchart adalah bagan-bagan yang mempunyai arus yang menggambarkan
langkah-langkah penyelesaian suatu masalah. Gambaran ini dinyatakan dengan simbol.
Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan hubungan antar
proses digambarkan dengan garis penghubung.
Flowchart ini merupakan langkah awal pembuatan program. Dengan adanya flowchart
urutan poses kegiatan menjadi lebih jelas. Jika ada penambahan proses maka dapat dilakukan
lebih mudah. Setelah flowchart selesai disusun, selanjutnya pemrogram (programmer)
menerjemahkannya ke bentuk program dengan bahasa pemrograman.
Tujuan Membuat Flowchat :
• Menggambarkan suatu tahapan penyelesaian masalah
• Secara sederhana, terurai, rapi dan jelas
• Menggunakan simbol-simbol standar
Dalam penulisan Flowchart dikenal dua model, yaitu Sistem Flowchart dan
Program Flowchart.
- System flowchart: Urutan proses dalam system dengan menunjukkan alat media
input, output serta jenis penyimpanan dalam proses
pengolahan data.
· - Program flowchart: Urutan instruksi yang digambarkan dengan symbol tertentu
untuk memecahkan masalah dalam suatu program.
Contoh program Flowchart
B. SIMBOL – SIMBOL FLOWCHART
Simbol-simbol yang di pakai dalam flowchart dibagi menjadi 3 kelompok :
1) Flow direction symbols
- Digunakan untuk menghubungkan simbol satu dengan yang lain
- Disebut juga connecting line
2) Processing symbols
- Menunjukan jenis operasi pengolahan dalam suatu proses / prosedur
3) Input / Output symbols
- Menunjukkan jenis peralatan yang digunakan sebagai media input atau output.
Tabel Simbol-simbol Flowchart
C. PEMBUATAN FLOWCHART
Dalam pembuatan flowchart tidak ada rumus atau patokan yang bersifat mutlak. Karena
flowchart merupakan gambaran hasil pemikiran dalam menganalisa suatu masalah dengan
komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu pemrogram
dengan pemrogram lainnya.
Namun secara garis besar, setiap pengolahan selalu terdiri dari tiga bagian utama, yaitu :
• Input berupa bahan mentah
• Proses pengolahan
• Output berupa bahan jadi
Untuk pengolahan data dengan komputer, dapat dirangkum urutan dasar untuk
pemecahan suatu masalah, yaitu:
START: berisi instruksi untuk persiapan perlatan yang diperlukan sebelum menangani
pemecahan masalah.
READ: berisi instruksi untuk membaca data dari suatu peralatan input.
PROCESS: berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data
yang dibaca.
WRITE: berisi instruksi untuk merekam hasil kegiatan ke peralatan output.
END: mengakhiri kegiatan pengolahan
Proses Abstraksi & Subcharts RAPTOR dan Prosedur
Ketika mengembangkan suatu algoritma yang akan dijalankan oleh komputer, kita
menulis langkah-langkah dalam hal apa komputer dapat menyelesaikan. Langkah-langkah ini
cenderung petunjuk agak sederhana karena komputer memiliki sejumlah instruksi yang mengerti.
Hal ini membuat algoritma komputer yang menyelesaikan tugas-tugas kompleks yang panjang
dan rumit. Oleh karena itu mereka dapat menjadi sulit untuk dimengerti, sulit untuk
mendapatkan yang benar, dan sulit untuk memodifikasi.
Konseptual komputer bisa dilakukan dengan mengelompokkan satu set pernyataan yang
menyelesaikan tugas tertentu menjadi "proses" yang memiliki nama yang unik. Kemudian, setiap
kali kita perlu bahwa tugas tertentu yang dilakukan, kita "sebut" proses dan konseptual
dijalankan sebagai satu langkah dalam algoritma kami. Kita telah melihat hal ini dengan rutinitas
di RAPTORGraph.
Lingkungan pemrograman RAPTOR menyediakan dua mekanisme untuk
mengimplementasikan abstraksi proses: subcharts dan prosedur. Biasanya siswa yang baru untuk
pemrograman menemukan subcharts lebih mudah untuk membuat dan memahami. Di sisi lain,
prosedur yang "ditingkatkan" subcharts dan programer baru biasanya menemukan prosedur lebih
sulit untuk mengerti.

Subcharts
Untuk membuat subchart, posisi kursor mouse Anda ke tab "main" subchart (yang
dilingkari merah pada gambar ke kanan) dan klik dan tahan tombol kanan mouse. Sebuah
menu pop-up akan muncul, seperti yang ditunjukkan ke kanan. (Jika Anda RAPTOR
"mode" diatur ke "Novice," maka hanya "subchart Tambah" pilihan akan ditampilkan
dalam menu pop-up. Jika RAPTOR "mode" diatur ke "Intermediate," Anda juga akan
melihat "Tambah prosedur" pilihan) Sorot "subchart Tambah" pilihan dalam menu popup dan lepaskan tombol mouse.. Sebuah kotak dialog baru akan muncul yang meminta
nama subchart. Semua subcharts (dan prosedur) harus memiliki nama yang unik.
Setiap subchart yang diciptakan akan memiliki "tab" di sebelah kanan tab "main"
subchart. Contoh berikut ini menunjukkan sebuah program yang telah dipecah menjadi 4
subcharts: utama, Initialize_screen, Draw_characters, dan Animate. Untuk mengedit
subchart kita harus mengklik tab yang terkait. Kita hanya dapat melihat / mengedit satu
subchart pada suatu waktu.

Prosedur Parameter
Ada tiga jenis parameter:
- input parameter : nilainya diinisialisasi ketika prosedur ini disebut.
- Parameter Output -: nilai akhir yang akan disalin kembali ke variabel dalam program
Sub menelepon.
- Input / Output parameter : nilainya diinisialisasi ketika prosedur dipanggil dan nilai
akhir yang akan disalin kembali ke variabel dalam program sub-menelepon.
Kita dapat membuat prosedur yang dapat kita tentukan nama-nama dari setiap parameter
dan jenis mereka. Jika kitatidak yakin tentang apa parameter yang kita perlukan, kita
dapat mengubah parameter setiap saat dengan mengklik kanan pada tab prosedur dan
memilih "Modify prosedur" pilihan.
Download