Kamis, 19 September 2013

PRAKTIKUM MODUL 1


PRAKTIKUM MODUL 1
DASAR PEMROGRAMAN




DASAR TEORI

Dalam Mempelajari Teori Algoritma dan Pemrograman dalam matakuliah Algoritma dan Pemrograman, maka perlulah mahasiswa terlebih dahulu mengenal akan definisi-definisi masing-masing dari kata  ‘Algoritma’ serta ‘Pemrograman’.
Beberapa definisi Algoritma adalah  seperti berikut ini :
Pola pikir yang terstruktur yang berisi tahap-tahap penyelesaian masalah.
Urutan logis pengambilan keputusan untuk pemecahan masalah.
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.



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. 


Pengenalan Flowchart

Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta instruksinya. 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 bahsa pemrograman.
Simbol-simbol flowchart
Flowchart disusun dengan simbol-simbol. Simbol ini dipakai sebagai alat bantu menggambarkan proses di dalam program. Simbol-simbol yang dipakai antara lain :
Flow Direction symbol
Yaitu simbol yang digunakan untuk menghubungkan antara simbol yang satu dengan simbol yang lain. Simbol ini disebut juga connecting line.
Terminator Symbol
Yaitu simbol untuk permulaan (start) atau akhir (stop) dari suatu kegiatan
Connector Symbol
Yaitu simbol untuk keluar – masuk atau penyambungan proses dalam lembar / halaman yang sama.
Connector Symbol
Yaitu simbol untuk keluar – masuk atau penyambungan proses pada lembar / halaman yang berbeda.
Processing Symbol
Simbol yang menunjukkan pengolahan yang dilakukan oleh komputer
Simbol Manual Operation
Simbol yang menunjukkan pengolahan yang tidak dilakukan oleh komputer
Simbol Decision
Simbol pemilihan proses berdasarkan kondisi yang ada.
Simbol Input-Output
Simbol yang menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya
Simbol Manual Input
Simbol untuk pemasukan data secara manual on-line keyboard
Simbol Preparation
Simbol untuk mempersiapkan penyimpanan yang akan digunakan sebagai tempat pengolahan di dalam storage.
Simbol Predefine Proses
Simbol untuk pelaksanaan suatu bagian (sub-program)/prosedure
Simbol Display
Simbol yang menyatakan peralatan output yang digunakan yaitu layar, plotter, printer dan sebagainya.
Simbol disk and On-line Storage
Simbol yang menyatakan input yang berasal dari disk atau disimpan ke disk.
Kaidah-kaidah 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;
  1.   .  Input berupa bahan mentah
  2.      Proses pengolahan
  3.     Output berupa bahan jadi.
Untuk pengolahan data dengan komputer, dapat dirangkum urutan dasar untuk pemecahan suatu masalah, yaitu;
  1.        START         : berisi instruksi untuk persiapan perlatan yang diperlukan sebelum menangani  pemecahan masalah.
  2.        READ           : berisi instruksi untuk membaca data dari suatu peralatan input.
  3.        PROCESS     : berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data yang dibaca.
  4.        WRITE         : berisi instruksi untuk merekam hasil kegiatan ke perlatan output.
  5.        END             : mengakhiri kegiatan pengolahan


Pengertian pseudocode

pseudocode adalah deskripsi dari algoritma pemograman computer yang menggunakan struktur sederhana dari beberapa pemograman tetapi bahasa terbut hanya di tujukan agar dapat di baca manusia.
biasanya yang di tulis dari pseudocode adalah senuah fariable dan fungsi, tujuan utama sari pseudocode adalah memidahkan manusia untuk memahami prinsip-prinsip dari suatu algoritma. Penggunaan akogaritma umumnya kiya temikkan dalam buku-buku dan artikel-artilkel tentang pemograman yang membahas tentang alogaritma tertentu.
kadang pseudocode kita temikan salam suatu pengembangan pemograman computer. Dalam pseudocode, tidak terdapat syntac standar yang resmi. Karena itu, pseudocode dapat kita terapkan dalam berbagai bahasa pemograman. Tentu saja harus kita tentukan setiap tahap dengan bahasa pemograman yang kita gunakkan. Fungsi dari pseudocode sama dengan Flowchart. Perbedaannya terletak pada cara penyampaianya. pseudocode menggunakan kata-kata untuk menjelaskan suatu algoritma, sedangkan flowchart menggunakkan gambar.


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.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:

  1.      Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
  2.      Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kodemnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
  3.      Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
  4.      Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
  5.      Besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.



Pemahaman Algoritma


1.Memindahkan air
  1.        Pertama mengambil sebuah gelas kosong (gelas C)
  2.       Tuangkan air dari gelas B ke gelas C
  3.        Pindahkan air pada gelas A ke gelas B
  4.       Pindahkan air pada gelas B ke pada gelas C ke gelas A

2. Memindahkan ember
  1. Mengisi ember 3 liter tuangkan dalam ember 5 liter
  2. Isi lagi ember 3 liter dan tuangkan dalam ember 5 liter
  3. Buang air di ember 5 liter
  4. Tuangkan sisa air di ember 3 liter ke ember 5 liter
  5. Isi ember 3 liter,tuangkan ke ember 5 liter

3. Plastelina Game

1.    Orang kesatu dan keenam menyeberang dan orang kesatu kembali dan membawa orang ketiga.
2.    Lalu orang ketiga kembali.
3.    Kemudian orang kedelapan dan kedua belas menyeberang.
4.    Terakhir orang kesatu menjemput orang ketiga untuk sama-sama menyeberang.



4. Canibal Game

1. Dua kanibal menyebrang ke pulau seberang.
2. Lalu 1 kanibal turun dan 1 kanibal lagi kembali keseberang.
3. Lalu kanibal itu membawa kanibal yang lain keseberang
4. 1 kanibal kembali,lalu 2 orang rahib menyeberang dengan meninggalkan 1 rahib dan 1 kanibal
5. Lalu rahib dan kanibal menyebrang kembali ke tempat semula
6. Kanibal turun rahib naik untuk menyebrang bersama rahib yang ada di perahu
7. Ke-2 rahib turun dan kanibal naik menyebrang,kanibal yang di sebrang naik menyebrang bersama kanibal yang membawa perahu
8. Kanibal 1 turun dan yang lain menjemput kanibal yang tersisa diseberang.


5. Wolf Game

1.       Jika membawa srigala terlebih dulu, maka kambing akan memakan rumput, jika membawa rumput terlebih dulu, srigala akan memakan kambing
2.       Permisalan,sisi awal adalah A,sisi akhir adalah B
3.       Bawa kambing ke sisi A,karena srigala tidak makan rumput
4.       Lalu kembali ke sisi A,bawa rumput ke sisi B
5.       Bawa kembali kambing ke sisi A,dan diturunkan
6.       Srigala di bawa ke sisi B,dan petani kembali kesisi A
7.       Ambil kambing dan bawa ke sisi B





Referensi