Algoritma Pemrograman
Pengertian Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian
masalah yang disusun secara sistematis dan logis.
Syarat Pembuatan Algoritma
1.Algoritma harus 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.
2.Seberapa baik hasil yang dicapai oleh algoritma.Algoritma
yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang
sebenarnya.
3.Efisiensi Algoritma.Efisiensi algoritma dapat ditinjau
dari 2 hal yaitu efisiensi waktu dan efisiensi 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.
Syarat Algoritma yang Baik
Persyaratan untuk menjadi algoritma yang baik adalah:
1.Tingkat kepercayaannya tinggi (realibility).Hasil yang
diperoleh dari proses harus berakurasi tinggi dan benar.
2.Pemrosesan yang efisien (cost rendah).Proses harus diselesaikan
secepat mungkin dan frekuensi kalkulasi yang sependek mungkin.
3.Sifatnya general.Bukan sesuatu yang hanya untuk
menyelesaikan satu kasus saja,tapi juga untuk kasus lain yang lebih general.
4.Bisa dikembangkan.Haruslah sesuatu yang dapat kita kembangkan
lebih jauh berdasarkan perubahan requirement yang ada.
5.Mudah dimengerti.Siapapun yang melihat,dia dapat memahami
algoritma Anda.Susah dimengertinya suatu program akan membuat susah
dimaintenance.
6.Portabilitas yang tinggi (portability).Bisa dengan mudah
diimplementasikan di berbagai platform computer.
7.Precise (tepat,betul,teliti).Setiap instruksi harus
ditulis dengan seksama dan tidak ada keragu-raguan,dengan demikian setiap
instruksi harus dinyatakan secara eksplisit dan tidak ada bagian yang dihilangkan
karena pemroses dianggap sudah mengerti.Setiap langkah harus jelas dan pasti.
8.Jumlah langkah atau instruksi berhingga dan
tertentu.Artinya,untuk kasus yang sama banyaknya,langkah harus tetap dan
tertentu meskipun datanya berbeda.
9.Efektif.Tidak boleh ada instruksi yang tidak mungkin
dikerjakan oleh pemroses yang akan menjalankannya.
10.Terminate.Jalannya algoritma harus ada kriteria berhenti.
11.Output yang dihasilkan tepat.Jika langkah-langkah
algoritmanya logis dan diikuti dengan seksama maka dihasilkan output yang
diharapkan.
Program
Program adalah instruksi-instruksi untuk computer,yang
mendeskripsikan apa yang harus dilakukan komputer.
Syarat-syarat Program adalah :
1.Mengerti permasalahan yang akan diselesaikan.
2.Menganalisa penyelesaian masalah.
3.Membuat algoritma dan flowchart.
4.Menulis program.
5.Melakukan testing.
6.Membuat dokumentasi.
Langkah-Langkah Pemecahan Masalah
Langkah-langkah yang dilakukan untuk menyelesaikan masalah
dalam pemrograman dengan computer adalah :
1.Definisikan masalah.
2.Buat algoritma dan struktur cara penyelesaian
3.Menulis program
4.Mencari kesalahan
5.Uji dan verifikasi program
6.Dokumentasi program
7.Pemeliharaan program
1.Definisikan Masalah
Berikut adalah hal-hal yang harus diketahui dalam analisis
masalah supaya kita mengetahui bagaimana permaslahan tersebut :
a.Kondisi awal,yaitu input yang tersedia
b.Kondisi akhir,yaitu output yang diinginkan
c.Data lain yang tersedia
d.Operator yang tersedia
e.Syarat atau kendala yang harus dipenuhi
2.Buat Algoritma dan
Struktur Cara Penyelesaian
Jika masalahnya kompleks,maka dibagi ke dalam
modul-modul.Tahap penyusunan algoritma seringkali dimulai dari langkah yang
global terlebih dahulu.Langkah global ini diperhalus sampai menjadi langkah
yang lebih rinci atau detail.Cara pendekatan ini sangat bermanfaat dalam
pembuatan algoritma untuk masalah yang kompleks.Penghalusan langkah dengan cara
memecah langkah menjadi beberapa langkah.Setiap langkah diuraikan lagi menjadi
beberapa langkah yang lebih sederhana.Penghalusan langkah ini akan terus
berlanjut sampai setiap langkah sudah cukup rinci dan tepat untuk dilaksanakan
oleh pemroses.
3.Menulis Program
Algoritma yang telah dibuat,diterjemahkan dalam bahasa
komputer menjadi sebuah program.Perlu diperhatikan bahwa pemilihan algoritma
yang salah akan menyebabkan program bekerja dengan kurang baik.Program yang
baik memiliki standar penilaian berikut :
a.Standar teknik pemecahan masalah
-Teknik Top-Down
Teknik pemecahan masalah yang paling umum
digunakan.Prinsipnya adalah suatu masalah yang kompleks dibagi-bagi ke dalam
beberapa kelompok masalah yang lebih kecil.Dari masalah yang kecil tersebut
dilakukan analisi.Jika dimungkinkan maka masalah tersebut akan dipilah lagi
menjadi subbagian-subbagian dan setelah itu mulai disusun langkah-langkah
penyelesaian yang lebih detail.
-Teknik Bottom-Up
Prinsip teknik bottom-up adalah pemecahan masalah yang
kompleks dilakukan dengan menggabungkan prosedur-prosedur yang ada menjadi satu
kesatuan program sebagai penyelesaian masalah tersebut.
b.Standar penyusunan program
-Kebenaran logika dan penulisan
-Waktu minimum untuk penulisan program
-Kecepatan maksimum eksekusi program
-Ekspresi penggunaan memori
-Kemudahan merawat dan mengembangkan program
-User Friendly
-Portability
-Pemrograman modular
4.Mencari Kesalahan
a.Kesalahan sintaks (penulisan program).
b.Kesalahan pelaksanaan : semantik,logika,dan ketelitian.
Semantik adalah pemahaman (studi) tentang makna.
Logika adalah hasil pertimbangan akal pikiran.
5.Uji dan Verifikasi
Program
Pertama kali harus diuji apakah program dapat
dijalankan.Apabila program tidak dapat dijalankan maka perlu diperbaiki
penulisan sintaksisnya tetapi bila program dapat dijalankan,maka harus diuji
dengan menggunakan data-data yang biasa yaitu data yang diharapkan oleh
sistem.Contoh data ekstrem,misalnya program menghendaki masukan jumlah data
tetapi user mengisikan bilangan negate.Program sebaiknya diuji menggunakan data
yang relatif banyak.
6.Dokumentasi Program
Dokumentasi program ada dua macam yaitu :
1.Dokumentasi internal
Adalah dokumentasi yang dibuat di dalam program yaitu setiap
kita menuliskan baris program sebaiknya diberi komentar atau keterangan supaya
mempermudah kita untuk mengingat logika yang terdapat di dalam instruksi
tersebut,hal ini sangat bermanfaat ketika suatu saat program tersebut akan
dikembangkan.
2.Dokumentasi eksternal
Adalah dokumentasi yang dilakukan dari luar program yaitu
membuat userguide atau buku petunjuk aturan atau cara menjalankan program
tersebut.
7.Pemeliharaan Program
a.Memperbaiki kekurangan yang ditemukan kemudian.
b.Memodifikasi,karena perubahan spesifikasi.
Tipe Data
Tipe data di bagi menjadi :
1.Bit
2.Byte
3.Integer
4.Word
5.Real
1.Tipe Data Bit
Sebagaimana di ketahui bahwa seluruh data dan informasi ditulis
di dalam komputer dalam bentuk biner ( 0/1 ) dan satuan penulisan itu disebut
BIT.Dengan demikian bit didenisikan sebagai satuan inormasi data di dalam komputer yang akan bernilai 0
dan 1.
2.Tipe Data Byte
adalah satuan informasi yang lebih besar dari bit. Istilah 'byte' pertama diciptakan dan digunakan oleh Dr. Werner Buccholz di tahun 1956, saat itu ia bekerja sebagai seorang ilmuwan di IBM.
3.Tipe Data Integer
Integer adalah cara penulisan bilangan dalam 16 bit dimana
bit dengan bobot tertinggi (MSB) di gunakan sebagai bit tanda (sign bit). Bit
tanda akan bernilai nol (0) apabila bilangan positi dan akan bernilai 1 apabila
bilangannya negatif.
4.Tipe Data Word
Word adalah cara penulisan bilangan dalam 16 bit dimana ke
semua bit di gunakan untuk menuliskan bilangan.Bit harus selalu positif.
5.Tipe Data Real
Real adalah cara penulisan bilangan dalam 32 bit,dimana bit
MSB di gunakan sebagai bit tanda (bernilai 0 apabila bilangan positif,bernilai
1 apabila bilangan negatif).Bit exponential (bernilai 0 kalau bilangan
pangkatnya positif dan bernilai 1 bila pangkatnya negatif).Sisa bit / bit ke
0-29 dibagi 3 bagian (hanya computer yang tahu) adalah : exponential,magnitud /
bilangan integer,dan fraksional.
Sumber : Materi Kuliah
Semoga artikel ini bermanfaat,pembaca yang baik akan membagikan informasi dengan men-share artikel ini.
Saya mengharap komentar yang membangun.