I'am

I'am

Kamis, 19 September 2013

Laporan Dasar Pemrograman - Modul 1



1. Dasar Teori



- Dasar Teori Algoritma dan Pemrograman



1. Dasar Teori Algoritma


- Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis

- Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah

- Algoritma adalah suatu himpunan hingga dari instruksi-instruksi yang secara jelas memperinci langkah-langkah proses pelaksanaan, dalam pemecahan suatu masalah tertentu, atau suatu kelas masalah tertentu, dengan dituntut pula bahwa himpunan instruksi tersebut dapat dilaksanakan secara mekanik

- http://www.slideshare.net/zaebah/algoritma-pemrograman-dasar

2. Dasar Teori Pemrograman


- Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman.

- Program = Algoritma + Bahasa (Struktur Data)

http://www.slideshare.net/akhbaydhowi/algoritma-dan-pemrograman-teori-dan-praktik-dalam-pascal-edisi-kedua-normal-bab-1-11123314


- 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.
 : http://sindarku.wordpress.com/2009/06/24/karakteristik-algoritma/

: https://docs.google.com/file/d/0B16LT3jRIJcLRzdzVTduaGk1UHc/preview


- Flowchart



Pengenalan Flowchart

Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam
suatu program, yang menyatakan arah alur program tersebut.
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.

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


: http://irma14.blogspot.com/2008/09/pengertian-dasar-dan-simbol-flowchart.html

Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart :



- 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 pseudocode 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.

Berikut adalah contoh pseudocode fungsi untuk menentukan nilai minimal dari dua bilangan:

function min(x,y)


if x > y then


return y


else


return x


end if


Berikut adalah contoh flowchart untuk fungsi diatas




- 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.

Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

http://id.wikipedia.org/wiki/Bahasa_pemrograman




2. Langkah –langkah Pemecahan Masalah


1. Menukarkan Isi Air Kedalam Gelas

Untuk menukarkan isi gelas supaya isi gelas A = Merah da nisi gelas B = Biru adalah dengan menambah gelas sementara yaitu gelas C, dan algoritmanya sebagai berikut :

1.Tuangkan air dari Gelas A ke Gelas C. Sehingga Gelas C Berisi air berwarna Merah,Gelas A Kosong

2.Tuangkan air Dari Gelas B Ke gelas A. Sehingga Gelas B Kosong Dan Gelas A berisi air berwarna Biru.

3.Tuangkan air dari Gelas C ke gelas B. Sehingga Gelas C Kosong dan Gelas B berisi air berwarna Merah

https://docs.google.com/file/d/0B16LT3jRIJcLRzdzVTduaGk1UHc/preview?pli=1

2. Misalkan anda mempunyai dua ember, masing-masing ber-volume 5liter dan 3 liter. Anda diminta untuk mendapatkan air (dari sebuah danau) sebanyak 4 liter dengan menggunakan bantuan hanya kedua ember tersebut. Terserah bagaimana caranya, anda boleh memindahkan air dari satu ember ke ember yang lain, membuang seluruh isi ember, dan sebagainya. Catatan: ember tidak memiliki ukuran.


Game: http://www.coolmath4kids.com/math_puzzles/Logic-waterjars/

Sudah terpecahkan



Pertanyaan: Tuliskan langkah-langkah untuk mendapatkan air 4 liter tersebut

Jawaban :
- langkah 1 = ambil air dari danau dengan ember yang ber-volume 5 liter

- langkah 2 = masukkan air dari ember yang ber-volume 5 liter kedalam ember yang ber-volume 3 liter (jadi ember 5 liter berisi 2 liter dan ember 3 liter penuh)

- langkah 3 = buang air yang ada di ember ber-volume 3 liter

- langkah 4 = masukkan air dari ember yang ber-volume 5 liter ke ember yang ber- volume 3 liter (jadi ember 3 liter berisi 2 liter air )

- langkah 5 = ambil air dari danau dengan ember ber-volume 5 liter dan tuangkan air dari ember bervolume 5 liter ke ember 3 liter (jadi ember yang ber-volume 5 liter berisi 4 liter air dan ember yang ber-volume 3 liter berisi penuh )

- langkah 6 = buang air yang ada di ember bervolume 3 liter maka tersisa air berisi 4 liter yang ada di ember ber-volume 5 liter.

3. plastelina game) Ada sebuah keluarga terdiri dari 5 orang, akan menyeberang melewati jembatan pada malam hari dengan bantuan lampu yang hanya bisa bertahan 30 detik, dengan catatan:
a. Setiap orang mempunyai kecepatan yang berbeda-beda (1, 3, 6, 8, dan 12 detik).

b. Apabila yang melewati jembatan ada 2 orang, maka kecepatannya akan dihitung berdasarkan yang paling lambat.




Game bisa di akses di: http://plastelina.net/game3.html

Sudah terpecahkan




Pertanyaan: tuliskan langkah-langkah secara detail untuk menyelesaikan game tersebut.

Jawaban:

langkah 1 = 1 & 3 menyebrang, 1 kembali (Tinggal 6 , 8 ,& 12) tersisa 26 detik

langkah 2 = 12 & 8 menyebrang , 3 kembali (Tinggal 6 , 1 , & 3) tersisa 11 detik

langkah 3 = 1 & 6 menyebrang , 1 kembali (Tinggal 1 & 3) tersisa 4 detik

langkah 4 = 1 & 3 menyebrang , selesai, waktu tersisa 1 detik. (Selesai)


4. (Canibal Game) Bagaimana caranya untuk menyeberangkan tiga rahib dan 3 kanibal ke pulai di seberang, dengan catatan:
a. Perahu maksimal dapat ditumpangi dua orang.
b. Perahu tidak dapat berjalan sendiri (tanpa penumpang)
c. Jika jumlah rahib lebih sedikit dari kanibal, maka rahib akan dimakan oleh kanibal.




Link game: http://www.plastelina.net/game2.html

Sudah terpecahlan







Pertanyaan: tuliskan langkah-langkah secara detail untuk menyeberangkan rahib dan kanibal ke pulai seberang.

Jawaban :



Langkah 1.kanibal dan kanibal menyebrang

Langkah 2. kanibal kembali

langkah 3.kanibal dan kanibal menyebrang

langkah 4. kanibal kembali

langkah 5.rahib dan rahib menyebrang

langkah 6.rahib dan kanibal kembali

langkah 7.rabih dan rahib menyebrang

langkah 8. kanibal kembali

langkah 9.kanibal dan kanibal menyebrang

langkah 10. kanibal kembali

langkah 11.kanibal dan kanibal menyebrang



5. (wolf game) seorang petani akan bepergian ke kota dengan membawa se-ekor kambing , anjing, dan rumput yang ketiganya memiliki berat yang tidak jauh berbeda. Ditengah jalan, petani harus menyeberangi sungai dengan menggunakan perahu dan untuk melaluinya petani tersebut tidak diperbolehkan membawa sekaligus bawaanya mengingat kapasitas kekuatan perahu tersebut, dan untuk melaluinya petani harus membawa satu per-satu bawaannya, dengan catatan:
a. Kambing makan rumput
b. Anjing makan kambing


Link game: http://www.plastelina.net/game1.html

Sudah terpecahkan






Pertanyaan: tuliskan langkah-langkah secara detail untuk menyeberangkan semua barang bawaan petani tersebut, dan berapa kali petani harus membawa satu-persatu bawaanya.

Jawaban :


langkah 1. petani dan kambing menyebrang (Tinggal Anjing & Rumput)

langkah 2. petani kembali

langkah 3. petani dan Anjing menyebrang

langkah 4. petani dan kambing kembali

langkah 5. petani dan Rumput menyebrang, (Tinggal Kambing)

langkah 6. petani kembali

langkah 7. petani dan kambing menyebrang, selesai

3.   Referensi



http://www.slideshare.net/zaebah/algoritma-pemrograman-dasar

http://www.slideshare.net/akhbaydhowi/algoritma-dan-pemrograman-teori-dan-praktik-dalam-pascal-edisi-kedua-normal-bab-1-11123314

http://sindarku.wordpress.com/2009/06/24/karakteristik-algoritma/

https://docs.google.com/file/d/0B16LT3jRIJcLRzdzVTduaGk1UHc/preview

http://irma14.blogspot.com/2008/09/pengertian-dasar-dan-simbol-flowchart.html

http://id.wikipedia.org/wiki/Bahasa_pemrograman

https://docs.google.com/file/d/0B16LT3jRIJcLRzdzVTduaGk1UHc/preview?pli=1



By Ronzi D'e Ryha

Tidak ada komentar:

Posting Komentar