Saturday, August 27, 2011

Preview - Pemrograman Terstruktur

Pada post saya kali ini saya akan memberikan preview mata kuliah saya yang ketiga yaitu
Pemrograman Terstruktur.. Apa itu pemrograman terstruktur?

Pemrograman Terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program. Prinsip dari pemrograman terstruktur adalah bahwa Apabila kita sudah sampai pada langkah tertentu, kita tidak boleh mengeksekusi langkah sebelumnya. Hal ini dikecualikan pada langkah-langkah untuk proses berulang.



Pengajaran mata kuliah ini bertujuan untuk :

1. Mahasiswa memahami metodologi pengembangan software (analisa ,design, coding, testing, dokumentasi) dan mampu menerapkan metodologi tersebut pada persoalan-persoalan sederhana.

2. Mahasiswa mampu berkomunikasi dan bekerja sama dalam sebuah tim melalui mekanisme dokumentasi program.

3. Mahasiswa mampu merancang program secara modular/terstruktur dengan pendekatan top-down menggunakan fungsi-fungsi.

4. Mahasiswa mampu merancang algoritma dengan benar dan efisien, serta mampu melakukan analisa kompleksitas terhadap algoritma tersebut.

5. Mahasiswa memahami elemen-elemen bahasa pemrograman C dan mampu mengimplementasikan hasil rancangannya secara benar.

6. Mahasiswa mampu menuangkan hasil pemikirannya dalam bahasa lisan maupun tulisan dengan baik.



Pokok bahasan yang akan dibahas antara lain :

  • Gambaran Umum Mengenai Pemrograman
Dalam pokok bahasan ini kita di berikan pengenalan mengenai pemrograman. Materi- materinya antara lain :
1. MetodologiPengembanganSoftware (analisis, design, coding, testing, dokumentasi)
2. Contohpenerapanmetodologipengembangansoftware padapersoalan-persoalansederhana: konversisatuanjarakdarimil kekilometer, konversisuhudariFahrenheit keCelcius
3. Langkah-langkahutamapenulisanprogram (coding) dalambahasaC menggunakanBorland Turbo C++

  • Gambaran Umum tentang C
Pada pokok bahasan ini kita akan diberikan pengenalan-pengenalan tentang bahasa C, yang tak lain adalah bahasa pemrograman itu sendiri. Materi-materinya antara lain :
1. Elemen-elemen bahasa C, deklarasivariable, executable statement, bentuk umum program C, ekspresi aritmetika, tipe data sederhana
2. Macam-macam error : syntax error, logical error, run time error, undetected error
3. Menulis program-program sederhana: hello world, 2 program pada pertemuan sebelumnya
4. Studikasus : Konversi uang dengan satuan besar ke dalam uang dengan satuan kecil
  • Pemrograman Terstruktur /Modular
Pemrograman Modular adalah suatu teknik pemrograman di mana program yang biasanya cukup besar dibagi-bagi menjadi beberapa bagian program yang lebih kecil. Materi-materi yang akan diajarkan antara lain :
1. Perancangan Top-Down menggunakan Fungsi
2. Macam-macam fungsi: tanpa argumen, input argumen, output argument
3. Pointer, alokasi memori dinamik, passing parameter by value, passing parameter by reference
4. Fungsi-fungsi pustaka dalam C
5. Structure chart, pseudocode, flowchart
6. Studikasus: Menggambar bentuk-bentuk sederhana

  • Percabangan

Percabangan adalah suatu keadaan dimana pernyataan dapat dieksekusi apabila suatu kondisi memenuhi syarat untuk mengerjakan pernyataan tersebut. Dalam Java terdapat tiga (3) percabangan yaitu:
  • if
    Pada pernyataan if, pernyataan dapat dieksekusi apabila kondisinya memenuhi ketentuan.
  • if else
    Pada pernyataan if akan menjalankan sebuah atau blog pernyataan jika kondisi persyaratannya bernilai benar, jika sebaliknya (kondisi salah) maka tidak akan menjalankan apa-apa. Pernyataan if-else digunakan apabila ada pernyataa lain yang dijalankan jika kondisi persyaratannya tidak terpenuhi (bernilai salah). Jika kondisi tidak terpenuhi (salah) maka yang dijalankan adalah sebuah atau beberapa pernyataan yang ada dalam blok else.
  • switch
    Pernyataan switch digunakan untuk memilih salah satu pernyataan dari beberapa pernyataan berdasarkan pemeriksaan nilai ekspresi. Ekspresi yang diperiksa harus bertpe int atau char.

  • Perulangan
Misal akan dibuat tampilan "Selamat Pagi Indonesia" sebanyak 20 kali. Tampilan-tampilan ini dapat dibuat dengan menggunakan fungsi printf() sebanyak 20 kali, tapi program semacam ini tidak efisien. Proses berulang-ulang ini disebut dengan proses PERULANGAN. Akan lebih praktis jika dilakukan dengan statemen perulangan. Statemen-statemen yang dapat digunakan adalah for, while, dan do-while.
  • Array
Array adalah sekumpulan data yang menggunakan nama variabel yang sama. Tiap-tiap nilai dari array disebut sebagai elemen dan memiliki index. Setiap elemen array adalah sebuah variabel juga.

Menciptakan Variabel Array

Untuk menciptakan variabel array dapat menggunakan perintah :
DIM variable[(subscripts)] [AS type]

Contoh :
DIM A(20) As Integer

Akan menciptakan variabel array yang bernama A yang memiliki 20 elemen (mulai dari index 0 s/d 19), yang masing-masing dapat 
menampung data integer, dan memiliki nilai awal 0 (nol).

Terdapat 2 jenis array yaitu Static Array dan Dynamic Array

Perbedaan Static Array dan Dynamic Array :
1. Memory Static Array dialokasikan oleh QBasic pada awal
eksekusi program dimulai, sedangkan Memory Dynamic Array
dialokasikan secara dinamis pada saat eksekusi program
berlangsung.
2. Static Array tidak dapat dideklarasi ulang, sedangkan Dynamic
Array dapat dideklarasikan ulang dengan perintah REDIM

  • Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis.Kata Logis merupakan kata kunci dalam Algoritma. Langkah-langkah dalam Algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar.
  • Sorting
Sorting adalah proses menyusun elemen – elemen dengan tata urut tertentu dan proses tersebut terimplementasi dalam bermacam aplikasi. Kita ambil contoh pada aplikasi perbankan. Aplikasi tersebut mampu menampilkan daftar account yang aktif. Hampir seluruh pengguna pada sistem akan memilih tampilan daftar berurutan secara ascending demi kenyamanan dalam penelusuran data.
Beberapa macam algoritma sorting telah dibuat karena proses tersebut sangat mendasar dan sering digunakan. Oleh karena itu, pemahaman atas algoritma – algoritma yang ada sangatlah berguna.

Ada 4 macam sorting yang akan dibahas di artikel ini :
1. Insertion Sort
Algoritma insertion sort pada dasarnya memilah data yang akan diurutkan menjadi dua bagian, yang belum diurutkan dan yang sudah diurutkan. Elemen pertama diambil dari bagian array yang belum diurutkan dan kemudian diletakkan sesuai posisinya pada bagian lain dari array yang telah diurutkan. Langkah ini dilakukan secara berulang hingga tidak ada lagi elemen yang
tersisa pada bagian array yang belum diurutkan.

2. Selection Sort
Algoritma ini sangat rapat dan mudah untuk diimplementasikan. Ide utama dari algoritma selection sort adalah memilih elemen dengan nilai paling 
rendah dan menukar elemen yang terpilih dengan elemen ke-i. Nilai dari i dimulai dari 1 ke n, dimana n adalah jumlah total elemen dikurangi 1.

3. Merge Sort
Merge sort menggunakan pola divide and conquer. Dengan hal ini deskripsi dari algoritma dirumuskan dalam 3 langkah berpola divide-and-conquer. Berikut menjelaskan langkah kerja dari Merge sort.

a. Divide
Memilah elemen – elemen dari rangkaian data menjadi dua bagian.
b. Conquer
Conquer setiap bagian dengan memanggil prosedur merge sort secara rekursif
c. Kombinasi
Mengkombinasikan dua bagian tersebut secara rekursif untuk mendapatkan rangkaian data berurutan.

Proses rekursi berhenti jika mencapai elemen dasar. Hal ini terjadi bilamana bagian
yang akan diurutkan menyisakan tepat satu elemen. Sisa pengurutan satu elemen
tersebut menandakan bahwa bagian tersebut telah terurut sesuai rangkaian.

4. Quicksort

Quicksort ditemukan oleh C.A.R Hoare. Seperti pada merge sort, algoritma ini juga
Pada algoritma quicksort, langkah ”kombinasi” tidak di lakukan karena telah terjadi
berdasar pada pola divide-and-conquer. Berbeda dengan merge sort, 

pengurutan elemen – elemen pada sub-array.
  • Searching
Searching adalah pencarian data dengan cara menelusuri data-data tersebut.Pada suatu data seringkali dibutuhkan pembacaan kembali informasi (retrieval information) dengan cara searching.empat pencarian data dapat berupa array dalam memori, bisa juga pada file pada external storage

Sequential Search
Adalah suatu teknik pencarian data dalam array (1 dimensi) yang akan menelusuri semua elemen-elemen array dari awal sampai akhir, dimana data-data tidak perlu diurutkan terlebih dahulu.


Binary Search
Adalah teknik pencarian data dalam dengan cara membagi data menjadi dua bagian setiap kali terjadi proses pencarian.Data yang ada harus diurutkan terlebih dahulu berdasarkan suatu urutan tertentu yang dijadikan kunci pencarian.
  • String
String dalam pemrograman komputer adalah sebuah deret simbol. Tipe data string adalah tipe data yang digunakan untuk menyimpan barisan karakter.
  • Fungsi Rekursif
Fungsi rekursif adalah suatu fungsi yang di dalamnya terdapat pemanggilan fungsi tersebut. Atau dengan kata lain, suatu fungsi yang memanggil dirinya sendiri.

  • Structure dan Union
Structure: tipe data yang digunakan untuk menampung sekelompok data yang berbeda tipe, tetapi berkaitan.
Union digunakan untuk kongsi memory. Dengan menggunakan union suatu lokasi memori dapat ditempati oleh dua atau beberapa variabel dengan masing-masing tipe data yang berbeda.

  • Pemrosesan File
Di BAB ini kita diajarkan mengenai seluk beluk pemrosesan file di dalam pemrograman
  • Program Berukuran Besar
  • Struktur Data Dinamik
Struktur data adalah tata letak data yang berisi kolom-kolom data (kolom yang tampak oleh user maupun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak tampak oleh pengguna). Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record).
  • C++
Perbedaan Antara Bahasa pemrograman C dan C++ meskipun bahasa-bahasa tersebut menggunakan sintaks yang sama tetapi mereka memiliki perbedaan, C merupakan bahasa pemrograman prosedural, dimana penyelesaian suatu masalah dilakukan dengan membagi-bagi masalah tersebut kedalam su-submasalah yang lebih kecil, Selain itu, C++ merupakan bahasa pemrograman yang memiliki sifat Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.

Udah dulu ya buat posting kali ini.. Semoga bermanfaat bagi Anda yang sedang belajar tentang pemrograman..

Vivat TC!! Vivat ITS!! ^.^



    Sumber :
    putramahkota.comxa.com/web_documents/pemrogramanpc00.pdf

    No comments:

    Post a Comment