PRAKTIKUM
MODUL 1
DASAR PEMROGRAMAN
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
- 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.
- 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”
- 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;
- . Input berupa bahan mentah
- Proses pengolahan
- Output berupa bahan jadi.
Untuk pengolahan data
dengan komputer, dapat dirangkum urutan dasar untuk pemecahan suatu masalah,
yaitu;
- START : berisi instruksi untuk persiapan perlatan yang diperlukan sebelum menangani pemecahan masalah.
- READ : berisi instruksi untuk membaca data dari suatu peralatan input.
- PROCESS : berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data yang dibaca.
- WRITE : berisi instruksi untuk merekam hasil kegiatan ke perlatan output.
- 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.
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:
- Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
- 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.
- 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.
- 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.
- 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
- Pertama mengambil sebuah gelas kosong (gelas C)
- Tuangkan air dari gelas B ke gelas C
- Pindahkan air pada gelas A ke gelas B
- Pindahkan air pada gelas B ke pada gelas C ke gelas A
2.
Memindahkan ember
- Mengisi ember 3 liter tuangkan dalam ember 5 liter
- Isi lagi ember 3 liter dan tuangkan dalam ember 5 liter
- Buang air di ember 5 liter
- Tuangkan sisa air di ember 3 liter ke ember 5 liter
- 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.
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
“
- http://wismarini.staff.unisbank.ac.id/2013/06/20/definisi-dasar-teori-algoritma-dan-pemrograman/
- http://sindarku.wordpress.com/2009/06/24/karakteristik-algoritma/
- http://andreyanto-gunadarma.blogspot.com/2012/10/pengenalan-flowchart-flowchart.html
- http://lawanda8070.blog.unsoed.ac.id/2011/10/08/pengertian-pseudocode/
- http://id.wikipedia.org/wiki/Bahasa_pemrograman