Kamis, 19 September 2013

MODUL 1 PRAKTIKUM DASAR PEMROGRAMAN



MODUL 1
PRAKTIKUM DASAR PEMROGRAMAN
Topik : Pemahaman Algoritma

1.      Dasar Teori
a.      Dasar Teori tentang algoritma dan pemrograman
Beberapa definisi Algoritma adalah  seperti berikut ini :
1)     Pola pikir yang terstruktur yang berisi tahap-tahap penyelesaian masalah.
2)     Urutan logis pengambilan keputusan untuk pemecahan masalah.
3)   Urutan langkah berhingga untuk memecahkan masalah logika dan matematika.
Sedangkan definisi dari Pemrograman yaitu proses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dengan menggunakan suatu bahasa pemrograman.

b.      Karakteristik algoritma
1)     Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Sebagai contoh, dalam algoritma Euclidean, pada langkah 1, jika n = 0, algoritma berhenti, jika n tidak = 0 maka nilai n selalu berkurang sebagai akibat dari langkah 2 dan 3, dan pada akhirnya nilai n = 0. Program yang tidak pernah berhenti mengindikasikan bahwa program tersebut berisi algoritma yang salah.
2)     Setiap langkah harus di defenisikan dengan tepat dan tidak berarti dua (ambiguous). Pembaca harus mengerti apa yang di maksud dengan “m” dan “n” adalah bilangan bulat tak negatif (-). Contoh lainnya pernyataan ” bagilah p dengan beberapa sejumlah bilangan bulat positif” dapat bermakna ganda. Berapakah yang di maksud dengan “berapa” ? Algoritma menjadi jelas jika langkah tersebut di tulis “bagilah p dengan 10 buah bilangan bulat positif”
3)     Algoritma memiliki nol atau lebih masukan (input). Masukan ialah besaran yang diberikan kepada algoritma untuk di proses. Algoritma Euclidean mempunyai dua buah masukan, yaitu m dan n.
4)     Algoritma mempunya nol atau lebih keluaran (output). Keluaran dapat berupa pesan atau besaran yang memiliki hubungan dengan masukan. Algoritma Euclidean mempunyai 1 keluaran, yaitu m pada langkah 1, yang merupakan pembagi bersama terbesar dari kedua bilangan.
5)     Algoritma harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat di kerjakan dalam sejumlah waktu yang masuk akal.


c.       Flowchart
Ada dua macam flowchart yang menggambarkan proses dengan komputer, yaitu:
1)     Flowchart sistem yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalam suatu sistem pengolahan data. Beberapa contoh Flowchart sistem: 

2)     Flowchart program yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses dan hubungan antar proses secara mendetail di dalam suatu program.
Berikut merupakan beberapa contoh simbol flowchart yang disepakati oleh dunia pemrograman:

d.      Psoudecode
Pseudocode adalah deskripsi dari algoritma pemrograman computer yang menggunakan struktur sederhana dari beberapa bahasa pemograman tetapi bahasa tersebut hanya ditujukan agar dapat dibaca manusia. Biasanya yang ditulis dari pseudocode adalah variabel dan fungsi. Tujuan penggunaan utama dari pseudocod e adalah untuk memudahkan manusia dalam memahami prinsip-prinsip dari suatu algoritma. Penggunaan pseudocode umumnya banyak kita temukan di buku-buku dan artikel-artikel tentang pemrograman yang membahas tentang algoritma tertentu. Kadang pula pseudocode kita temukan dalam merencanakan pengembangan suatu program komputer. Dalam pseudocode, tidak ada syntax standar yang resmi. Karena itu, pseudocode ini dapat kita terapkan dalam berbagai bahasa pemograman. Tentu saja harus kita sesuaikan setiap tahap dengan bahasa pemograman yang kita gunakan. Fungsi dari pseudocode mungkin sama dengan Flowchart. Perbedaannya terletak pada cara penyampaiannya. Pseudocode menggunakan kata-kata untuk menjelaskan suatu algoritma, sedangkan Flowchart menggunakan gambar.

e.      Bahasa pemrograman
Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer, adalah teknik komando/instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.

2.      Langkah-Langkah Pemecahan Masalah
a.      Memindahkan Air
1)     Ambil gelas kosong (gelas C).
2)     Tuangkan air gelas A yang berwarna merah ke gelas C.
3)     Setelah itu tuangkan air gelas B yang berwarna biru ke dalam gelas A.
4)     Kemudian air yang berwarna merah yang berada di gelas C dituangkan ke dalam gelas B.
5)     Sehingga gelas A berwarna biru dan gelas B berwarna merah.

b.      Mengisi Ember
1)     Ember 3 liter dimisalkan ember A dan ember 5 liter dimisalkan ember B.
2)     Isi ember A ke sebuah danau kemudian tuangkan ke ember B, sehingga ember B berisi 3 liter air.
3)      Isi lagi ember A ke sebuah danau kemudian tuangkan ke ember B, sehingga ember B penuh berisi 5 liter air dan ember A hanya berisi 1 liter air.
4)      Setelah itu buang semua isi ember B, kemudian isi dari ember A tuangkan ke ember B, sehingga ember B berisi 1 liter air.
5)      Isi lagi ember A ke sebuah danau, kemudian tuangkan ke ember B. Maka ember B berisi 1 liter + 3 liter = 4 liter air.

c.       Plastelina Game
1)     Orang 1 dimisalkan orang yang mempunyai kecepatan 1 detik dan orang yang mempunyai kecepatan 3 detik dimisalkan orang 3 dan sebagainya. Pulau awal dimisalkan pulau A dan pulau sebrang dimisalkan pulau B.
2)     Orang 1 dan 3 berjalan menuju ke pulau B.
3)     Kemudian orang 1 kembali ke pulau A.
4)     Selanjutnya, orang 8 dan 12 berjalanmenuju ke pulau B.
5)     Kemudian orang 3 kembali ke pulau A.
6)     Setelah itu, orang1 dan 6 berjalan menuju pulau B.
7)     Kemudian orang1 kembali ke pulau A.
8)     Setelah itu, orang 1 dan 3 berjalan menuju pulau B.

d.      Canibal Game
1)     Kanibal 1 dan 2 menyebrang, kemudian kanibal 1 kembali.
2)     Setelah itu, kanibal 1 dan 3 menyebrang, kemudian kanibal 1 kembali lagi.
3)     Rahib 1 dan 2 menyebrang, kemudian kanibal 2 dan rahib 1 kembali.
4)     Rahib 1 dan 3 menyebrang, kemudian kanibal 3 kembali.
5)     Setelah itu, kanibal 1 dan 3 menyebrang, kemudian kanibal 1 kembali.
6)     Kanibal 1 dan 2 menyebrang.

e.      Wolf Game
1)     Pulau pertama dimisalkan pulau A dan pulau kedua dimisalkan pulau B.
2)     Petani membawa kambing menuju pulau B, kemudian petani kembali ke pulau A.
3)     Petani membawa rumput menuju pulau B, kemudian petani membawa kambing kembali menuju pulau A.
4)     Petani membawa anjing menuju pulau B, kemudian petani kembali menuju pulau A.
5)     Setelah itu, petani membawa kambing menuju pulau B.

3.      Referensi