Tugas 2 (KONSEP DASAR PEMROGRAMAN)

KONSEP DASAR PEMROGRAMAN

BAB I
PENDAHULUAN
1.1. Latar Belakang
Tujuan dari belajar Algoritma dan Pemrograman adalah agar dapat membiasakan diri melakukan suatu perencanaan apabila menyelesaikan suatu masalah, karena suatu permasalahan yang diselesaikan dengan suatu perencanaan yang matang maka akan mendapatkan solusi yang lebih optimal dibandingkan menyelesaikan masalah tanpa menggunakan suatu perencanaan. Oleh karean itu, penyusun mencoba untuk memaparkan masalah tentang konsep dasar pemrograman.

1.2.      Rumusan Masalah
Makalah ini merumuskan beberapa permasalahan sebagai berikut :
  1. Apa pengertian program, pemrograman, dan algoritma?
  2. Bagaimana ciri-ciri algoritma pemrograman yang baik?
  3. Apa saja standar suatu program yang baik?
  4. 4. Apa saja sifat penulisan program?
  5. Bagaimana tahapan membangun program?
  6. Apa alasan menggunakan tahap-tahap penyusunan program?
  7. Bagaiaman kualitas bahasa pemrograman?
1.3.      Ruang Lingkup
Dalam makalah ini, penulis membatasi masalah yang akan dibahas pada materi kuliah Pemrograman Terstruktur. Pembahasan lebih dikhususkan pada konsep dasar pemrograman. Hal tersebut dimaksudkan untuk mempertegas pembahasan sehingga dapat terfokus pada masalah yang akan dibahas serta dapat memberikan gambaran umum tentang isi makalah sehingga pembaca lebih mudah mempelajarinya.
1.4. Maksud dan Tujuan
Maksud dari penyusunan tugas ini adalah untuk memenuhi dan melengkapi salah satu tugas mata kuliah Pemrograman Terstruktur di Bina Sarana Informatika. Sedangkan tujuan dari penulisan tugas ini adalah:
  1. Menerapkan teori yang didapat selama belajar di Bina Sarana Informatika.
  2. Mengembangkan kreativitas dan wawasan penulis.
  3. Memberikan uraian konsep dasar pemrograman secara lebih terperinci.
1.5. Metode Pengumpulan Data
Untuk memperoleh data yang diperlukan dalam penyusunan tugas ini, penulis menggunakan Metode Browsing Internet, yaitu metode yang dilakukan dengan browsing atau membaca atau mencari referensi-referensi yang berkaitan dengan masalah yang dibahas dalam tugas ini di internet.
1.6. Sistematika Penulisan
Untuk memudahkan pembaca dalam mempelajari dan mengetahui isi makalah ini, penulis memberikan uraian singkat mengenai gambaran pada masing-masing bab melalui sistematika penulisan yaitu :
BAB I    PENDAHULUAN
Dalam bab ini, penulis menguraikan tentang latar belakang penulisan, rumusan masalah, ruang lingkup, maksud dan tujuan serta metode-metode yang digunakan dalam pengumpulan data untuk menyusun tugas ini. Selain itu, penulis juga menguraikan mengenai sistematika penulisan.
BAB II PEMBAHASAN
Pada bab ini, penulis menguraikan tentang materi-materi yang akan dibahas karena bab ini merupakan bab utama dari makalah ini. Dalam bab ini penulis menguraikan tentang konsep-konsep dasar pemrograman, meliputi: pengertian program, pemrograman, dan algoritma; ciri-ciri algoritma pemrograman yang baik; standar suatu program yang baik; sifat penulisan program; membangun program; alasan menggunakan tahap-tahap penyusunan program; kualitas bahasa pemrograman.
BAB III PENUTUP
Dalam bab ini, penulis menguraikan tentang kesimpulan-kesimpulan dari masalah yang dibahas serta saran-saran yang penulis ajukan guna perbaikan selanjutnya.
BAB II
PEMBAHASAN
2.1.      Umum
Program adalah kata, ekspresi, pernyataan atau kombinasi yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah dan diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat dieksekusi oleh komputer.
Pemrograman adalah proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemograman. Sedangkan pemrograman terstruktur adalah metode untuk mengorganisasikan dan membuat kode-kode program supaya mudah untuk dimengerti, mudah di test dan di modifikasi.
Algoritma berasal dari kata algoris dan ritmis yang pertama kali ditemukan oleh Abu Jafar Mohhamed Ibn Musa al Khowaritzmi (825 M) dari buku Al Jabr Wa al Muqabla. Dalam bidang pemrograman algoritma didefinisikan sebagai suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang terstruktur dan dituliskan secara sistematis yang akan dikerjakan untuk menyelesaikan masalah dengan bantuan komputer.
Hubungan antara algoritma, masalah dan solusi dapat digambarkan sebagai berikut :
Proses dari masalah hingga terbentuk suatu algoritma disebut tahap pemecahan masalah, sedangkan tahap dari algoritma hingga terbentuk suatu solusi disebut dengan tahap implementasi. Solusi yang dimaksud adalah suatu program yang merupakan impelementasi dari algoritma yang disusun.
CONTOH
Algoritma ketika ingin mengirimkan surat kepada teman, yaitu :
  1. Tulis surat pada secarik kertas surat
  2. Ambil sampul surat
  3. Masukkan surat ke dalam sampul
  4. Tutup sampul surat menggunakan perekat
  5. Tempel perangko pada surat
  6. Bawa surat ke kantor pos untuk di poskan
2.2. Algoritma Pemrograman yang Baik
Ciri-ciri algoritma pemrograman yang baik adalah :
  1. Memiliki logika perhitungan atau metode yang tepat dalam memecahkan masalah
  2. Menghasilkan output yang tepat dan benar dalam waktu yang singkat
  3. Ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga tidak menimbulkan arti ganda.
  4. Ditulis dengan format yang mudah dipahami dan diimplementasikan ke dalam bahasa pemrograman.
  5. Semua operasi yang dibutuhkan terdefinisi dengan jelas.
  6. Semua proses harus berakhir setelah sejumlah langkah dilakukan.
Berikut ini contoh program yang mempunyai algortima yang tidak baik karena mengandung kesalahan logika.
Uses crt;
Var
I : Integer;
Begin
Clrscr;
I := 0;
While I < 5 Do
Begin
Writeln (‘Bina Sarana Informatika’);
I := I + I ;
Readln;
End;
End.
Berikut ini contoh program yang mempunyai algortitma yang baik karena mempunyai logika yang benar
Uses crt;
Var
I : Integer;
Begin
clrscr;
I := 0;
While I < 5 Do
Begin
Writeln(‘Bina Sarana Informatika’);
I := I + 1;
Readln;
End;
End.
Program akan berhenti karena kondisi yang ada terpenuhi sebanyak 5(lima)
2.3.      Standar Suatu Program yang Baik
Standar pemrograman dibutuhkan untuk menciptakan suatu program yang baik yang memiliki portabilitas yang tinggi, sehingga memudahkan dalam merancang dan merawat program serta meningkatkan efektifitas penggunaan peralatan komputer.
Untuk menentukan standar program yang baik dibutuhkan beberapa standar sebagai dasar penilaian, seperti :
  1. Pemecahan masalah
  2. Penyusunan program
  3. Perawatan program
  4. Standar prosedur
Standar-standar tersebut sering dilihat oleh pemrogram sebagai batasan kreatifitas dan kemampuan untuk menuangkan berbagai ide ke dalam bentuk program. Namun dengan adanya standar akan membuat program menjadi konsisten dan mudah untuk dikembangkan.
a.         Standar Pemecahan masalah
Teknik untuk dapat membantu memecahkan masalah antara lain teknik Top Down dan teknikModular.
1.) Teknik Top Down
Merupakan teknik pemecahan masalah yang paling umum digunakan. Pada teknik ini, suatu masalah yang kompleks dibagi-bagi ke dalam beberapa kelompok masalah yang lebih kecil. Dari kelompok masalah yang kecil tersebut di analisis. Apabila dimungkinkan maka masalah tersebut akan dipilah lagi menjadi sub bagian dan setelah itu mulai disusun langkah-langkah untuk menyelesaikan  secara detail.
2.) Teknik Bottom Up
Merupakan teknik pemecahan masalah yang mulai ditinggalkan, karena sulit untuk melakukan standarisasi proses dari prosedur-prosedur yang sudah terbentuk yang akan digabungkan. Pada teknik ini, bila ada masalah kompleks, maka pemecahan masalah dilakukan dengan menggabungkan prosedur-prosedur yang ada menjadi satu kesatuan program guna menyelesaikan masalah tersebut.
b.         Standar Penyusunan Program
Dalam menyusun program, ada beberapa kriteria yang harus diperhatikan oleh seorang pemrogram, yaitu :
1.) Kebenaran logika dan penulisan
Program yang disusun harus memiliki logika dalam pemecahan masalah. Program yang dibuat harus memiliki ketepatan, ketelitian dan kebenaran sehingga menghasilkan program yang baik.
2.) Waktu penulisan dan eksekusi program
a.) Contoh Logika pengujian yang tidak baik karena pengujian yang berulang-ulang sehingga waktu eksekusi tidak efisien :
IF item = nilai1
instruksi1
Endif
IF item = nilai2
Instruksi2
Endif
IF item = nilai3
instruksi3
Endif
Bentuk diatas akan melakukan pengujian sebanyak 3(tiga) kali untuk mendapatkan satu alternatif.
Contoh kedua susunan baris program yang tidak baik n := 1;
while n <=50 do
Begin
item (n) := A*B/C+D-E+n;
n := n + 1;
Readln;
End;
Bentuk eksekusi program diatas akan lambat karena eksekusi ekpresi matematika A*B/C+D-E+n akan diulang-ulang.
b.) Logika pengujian yang baik sehingga waktu lebih efisien:
IF item = nilai1
instruksi1
ELSE IF item = nilai2
instruksi2
ELSE IF item = nilai3
instruksi3
ENDIF
ENDIF
Bentuk ini setelah pengujian berhasil mendapatkan solusi, maka proses pengujian tidak akan dilanjutkan lagi
Contoh kedua susunan baris program yang baik :
n := 1;
Hasil := A*B/C+D-E+n;
while n <=50 do
Begin
item (n) := Hasil + n
n := n + 1;
Readln;
End;
Bentuk eksekusi program diatas akan lebih cepat karena eksekusi ekspresi matematika A*B/C+D-E+n
3.)        Perawatan dan pengembangan program
Penyusunan program harus mempunyai sifat kesederhanaan dan kejelasan dari program yang nantinya akan dikembangkan dan membantu dalam perawatan.
4.)        Portabilitas
Bahasa pemrograman dan program yang disusun sebaiknya bisa dipakai pada berbagai tipe komputer yang berbeda-beda dan berbagai jenis sistem operasi.
c.         Standar Perawatan Program
1.)        Dokumentasi
Dokumenatasi berguna untuk melakukan penelusuran jika terjadi kesalahan dan memberikan informasi kepada orang lain dapat mengerti dan memahami alur logika program.
2.)        Penulisan Instruksi
Beberapa hal yang perlu diperhatikan dalam penulisan instruksi atau statement program yaitu:
a.)        Berikan keterangan untuk awal statement atau instruksi yang tergabung dalam sekelompok statement.
b.)        Awal dan akhir statement dari sekumpulan statement ditulis pada kolom yang sama.
FOR I :=1 TO N DO
BEGIN
……………………..
………………………
END
c.)        Gunakan sebaris atau beberapa baris kosong sebagai pemisah.
d.)        Hindari pernyataan untuk Percabangan (IF statement ) yang sangat rumit dan Nested Loop (Loop disalam Loop lain) yang berlebihan.
e.)        Gunakan “kurung buka dan tutup” dalam menulis suatu ekspresi Aritmatika atau logika.
WHILE (………….) DO
BEGIN
……………………..
………………………
END;
f.)         Gunakan “Spasi” dalam menulis statement atau instruksi.
WHILE (N>=15) DO
2.4.      Sifat Penulisan Program
a.         Program Oriented
Penulisan program yang struktur programnya selalu berubah, apabila kondisi data yang diproses di dalam program tersebut, bertambah volume datanya. Selain itu penulisan program ini bersifat statis dan tidak fleksibel (program animasi)
b.         Data Oriented
Penulisan program yang struktur programnnya tidak selalu berubah, walaupun volume data yang diproses di dalam program tersebut, dalam jumlah besar. Selain itu pula penulisan program ini bersifat dinamis dan mempunyai tingkat fleksibilitas yang tinggi.
2.5. Membangun program
Bila masalah yang dihadapi oleh seorang pemrogram sangat besar dan kompleks, maka ia pasti membutuhkan tahapan-tahapan dalam membangun programnya, agar dapat diperoleh suatu program yang baik. Sebenarnya tahapan-tahapan tersebut hanya membantu pemrogram agar dapat menyelesaikan pekerjaannya secara sistematis.
Tahapan-tahapan untuk membangun suatu program yang besar dan kompleks adalah sebagai berikut :
  1. a. Definisi masalah
  2. b. Analisis kebutuhan
  3. c. Teknik pemecahan masalah dan algoritma
  4. d. Pengkodean
  5. e. Testing dan Debuging
  6. f. Pemeliharaan
  7. g. Dokumentasi
Untuk memecahkan suatu masalah yang sederhana pemrogram tidak perlu melalui tujuh tahap tersebut, tetapi cukup mengidentifikasi masalah, menentukan input, proses dan output yang diinginkan, menentukan algoritma, mengimplementasikannya dengan sautu bahasa pemrograman tertentu dan melakukan testing.
2.6.      Alasan Menggunakan Tahap-Tahap Penyusunan Program
Ada beberapa alasan mengapa seorang pemrogram perlu menggunakan tahap-tahap penyusunan program, yaitu :
  1. a. Pertimbangan Logis
Melalui tahap definisi masalah dan analisis kebutuhan, maka pemrogram dapat mengetahui dengan jelas bobot atau tingkat kesuliltan yang harus dipecahkan sehingga dapat melakukan perhitungan yang tepat untuk menentukan jumlah tenaga, harga, sumber daya dan waktu yang dibutuhkan untuk menyusun program
  1. b. Pertimbangan analogi
Menyusun program seakan-akan identik dengan membangun rumah dimana dibutuhkan rancangan arsitektur dan definisi tahap-tahap pengerjaan yang terencana secara baik dan sistematis, sebelum ia mulai membangun
  1. c. Pertimbangan jumlah data
Jumlah dan jenis data serta proses pengolahan data merupakan suatu hal yang perlu diperhatikan secara khusus. Jumlah dan jenis data sangat mempengaruhi dalam menentukan jenis variable dan yang akan digunakan dalam penyusunan program tersebut
  1. d. Pertimbangan untuk pengembangan
Melalui tahap-tahap penyusunan program akan diperoleh suatu program yang baik, terstruktur dan sistematis, sehingga dapat dengan mudah dikembangkan di masa mendatang
  1. e. Pertimbangan prinsip
Dalam menyusun program sebaiknya pemrogram membuat persiapan dan rancangan arsitektur program dengan matang, sehingga tidak menimbulkan masalah pada tahap coding dan testing
2.7.      Kualitas Bahasa Pemrograman
a. Ekspresivitas :
Bahasa pemrograman yang baik adalah mampu menggambarkan algoritma yang dibuat oleh programmer.
b. Dapat didefinisikan dengan baik :
Sintaks dan semantik bahasa pemrograman yang baik haruslah konsisten dan tidak bermakna ganda
c. Tipe data dan strukturnya:
Bahasa programmer yang baik haruslah berkemampuan untuk mendukung berbagai tipe data(integer, real, pointer,dsb) dan terstruktur dalam array, record ataupun object
d. Modularitas :
Bahasa pemrograman yang baik harus mempunyai fasilitas subprogramming sehingga suatu program yang besar dapat dikerjakan oleh sekaligus beberapa pemrogram secara bersama-sama yang nantinya dengan mudah dapat digabungkan menjadi sebuah modul saja.
e. Fasilitas masukan keluaran :
Bahasa pemrograman yang baik haruslah dapat mendukung berbagai jenis model file seperti sequential, random access, index, multiple index dan lain sebagainya dalam pemrosesan masukan dan keluaran
f. Portabilitas :
Bahasa pemrograman yang baik haruslah dapat dipakai pada berbagai tipe mesin komputer yang berbeda, jadi bersifat machine independent.
g. Efisiensi :
Bahasa pemrograman yang baik haruslah efisien.
h. Mudah dipelajari :
Bahasa pemrograman tersebut harus mudah dipelajari maupun diajarkan.
i. Bersifat Umum :
Bahasa pemrograman tersebut harus memiliki jangkauan luas pada berbagai aplikasi pemrograman sehingga dapat disebut bahasa yang serbaguna.
BAB III
PENUTUP
3.1. Kesimpulan
Konsep dasar pemrograman meliputi proses bagaimana mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah. Proses dari masalah hingga terbentuk suatu algoritma disebut tahap pemecahan masalah, sedangkan tahap dari algoritma hingga terbentuk suatu solusi disebut dengan tahap implementasi. Solusi yang dimaksud adalah suatu program merupakan proses impelementasi dari algoritma yang disusun.
Untuk menciptakan suatu program yang baik yang memiliki portabilitas yang tinggi, sehingga memudahkan dalam merancang dan merawat program serta meningkatkan efektifitas penggunaan peralatan komputer dibutuhkan suatu standar program. Standar-standar tersebut sering dilihat oleh pemrogram sebagai batasan kreatifitas dan kemampuan untuk menuangkan berbagai ide ke dalam bentuk program. Namun dengan adanya standar akan membuat program menjadi konsisten dan mudah untuk dikembangkan.
3.2.Saran
Untuk menciptakan suatu program yang baik harus memenuhi beberapa kriteria yaitu :
  1. Mudah dikembangkan di masa mendatang
  2. Dalam menyusun program sebaiknya pemrogram membuat persiapan dan rancangan arsitektur program dengan matang, sehingga tidak menimbulkan masalah pada tahap coding dan testing
  3. Sintaks dan semantik bahasa pemrograman yang baik haruslah konsisten dan tidak bermakna ganda
  4. Bahasa programmer yang baik haruslah berkemampuan untuk mendukung berbagai tipe data(integer, real, pointer,dsb) dan terstruktur dalam array, record ataupun object
  5. Bahasa pemrograman yang baik haruslah dapat mendukung berbagai jenis model file seperti sequential, random access, index, multiple index dan lain sebagainya.
  6. Bahasa pemrograman yang baik haruslah dapat dipakai pada berbagai tipe mesin komputer yang berbeda, jadi bersifat machine independent.
  7. Bahasa pemrograman yang baik haruslah efisien.
  8. Bahasa pemrograman tersebut harus mudah dipelajari maupun diajarkan.
  9. Bahasa pemrograman tersebut harus memiliki jangkauan luas pada berbagai aplikasi pemrograman sehingga dapat disebut bahasa yang serbaguna.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 komentar:

Posting Komentar