Shinjo Kazuma
Senin, 28 Oktober 2013
Jumat, 20 September 2013
Nama : Yelsin Aldi R.M.
Kelas : D3 M.I. C 2011
Nim : 115623027
1.
Misalkan
terdapat dua gelas, yakni gelas “A” dan “B”. Gelas A berisi air berwarna merah,
dan gelas B berisi air berwarna biru. Volume air di dalam kedua gelas sama.
Bagaimana mempertukarkan isi kedua gelas sehingga gelas A berisi air berwarna
biru, dan gelas B berisi air berwarna merah.
Kondisi awal:
Gelas
A Gelas
B
Kondisi akhir:
Gelas
A Gelas
B
Jawaban :
Langkah Pertama : kita siapkan gelas kosong yg kita namakan gelas C
Lanmgkah kedua : tuang cairan yg
ada di gelas A ke dlm gelas C
Langkah ketiga : tuang cairan
yg ada di gelas B ke dlm gelas A
Langkah keempat : tuang cairan yg ada di gelas C ke lm gelas B
Maka cairan
dari masing2 gelas sekarang sudah
selesai tertukar dari gelas yg sebelumnya.
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.
Pertanyaan: Tuliskan langkah-langkah
untuk mendapatkan air 4 liter tersebut.
Jawaban :
Langkah
Pertama : Isi penuh ember bervolume 3 liter dengan air (ember 3 liter berisi 3 liter air)
Langkah Kedua : Tuangkan air dari ember bervolume 3
liter ke dalam ember air bervolume 5 liter
(ember 5
liter,sekarang berisi 3 liter air)
Langkah Ketiga : Isi penuh kembali ember yang bervolume
3 liter dengan air (ember 3 liter berisi 3 liter air)
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.
Pertanyaan:
tuliskan langkah-langkah secara detail untuk menyelesaikan game tersebut.
Jawaban :
Langkah Pertama : orang
kesatu dan keenam menyeberang dan orang kesatu kembali dan membawa orang
ketiga.
Langkah Kedua : lalu orang ketiga kembali.
Langkah Ketiga : kemudian orang kedelapan dan kedua belas
menyeberang.
Langkah Keempat : terakhir
orang kesatu menjemput orang ketiga untuk sama-sama menyeberang.
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.
Pertanyaan: tuliskan langkah-langkah
secara detail untuk menyeberangkan rahib dan kanibal ke pulai seberang.
Jawaban :
Langkah Pertama : dua
kanibal menyebrang ke pulau seberang.
Langkah Kedua :
lalu 1 kanibal turun dan 1 kanibal lagi kembali keseberang.
Langkah Ketiga : lalu kanibal itu membawa kanibal yang lain
keseberang
Langkah Keempat : 1
kanibal kembali,lalu 2 orang rahib menyeberang dengan meninggalkan 1 rahib dan
1 kanibal
Langkah Keempat : lalu
rahib dan kanibal menyebrang kembali ke tempat semula
Langkah Kelima : kanibal turun rahib naik untuk menyebrang bersama rahib
yang ada di perahu
Langkah Keenam : ke-2
rahib turun dan kanibal naik menyebrang,kanibal yang di sebrang naik menyebrang
bersama kanibal yang membawa perahu
kanibal 1 turun dan yang lain menjemput
kanibal yang tersisa diseberang.
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
Pertanyaan: tuliskan langkah-langkah
secara detail untuk menyeberangkan semua barang bawaan petani tersebut, dan berapa
kali petani harus membawa satu-persatu bawaanya.
Jawaban :
Langkah Pertama : petani
membawa kambing dari pulau pertama kepulau kedua.
Langkah Kedua : lalu
petani kembali sendiri kepulau pertama untuk membawa anjing keseberang pulau
kedua.
Langkah Ketiga : dari
pulau kedua petani membawa kambing kepulau pertama.
Langkah Keempat : kemudian
petani tersebut membawa rumput dari pulau pertama kepulau kedua.
dan yang terakhir
petai kembali kepulau pertama untuk membawa kambing kepulau kedua.
Format Laporan
1.
Dasar
Teori
-
Dasar
Teori tentang algoritma dan pemrograman
-
Karakteristik
algoritma
-
Flowchart
-
Psoudecode
-
Bahasa
pemrograman
2.
Langkah-langkah
pemecahan masalah
3.
Referensi
1.
DasarTeori
- Dasar Teori Tentang
Algoritma Dan Pemrograman
Alogaritma : Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah
yang aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadiAlgorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari algorism menjadi algorithm muncul karena kata algorismsering dikelirukan dengan arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara
umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia,kata algorithm diserap menjadialgoritma.Pemrograman : Proses menulis, menguji dan memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman. Tujuan dari pemrograman adalah untuk memuat suatu program yang dapat melakukan suatu perhitungan atau 'pekerjaan' sesuai dengan keinginan si pemrogram (programmer). Untuk dapat melakukan pemrograman, diperlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan di banyak kasus, pengetahuan-pengetahuan lain seperti matematika.
Pemrograman adalah sebuah seni dalam menggunakan satu atau lebih algoritma yang saling berhubungan dengan menggunakan sebuah bahasa pemrograman tertentu sehingga menjadi sebuah program komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya pemrograman ini biasa disebut paradigma pemrograman.
Alogaritma : Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah
yang aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadiAlgorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari algorism menjadi algorithm muncul karena kata algorismsering dikelirukan dengan arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara
umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia,kata algorithm diserap menjadialgoritma.Pemrograman : Proses menulis, menguji dan memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman. Tujuan dari pemrograman adalah untuk memuat suatu program yang dapat melakukan suatu perhitungan atau 'pekerjaan' sesuai dengan keinginan si pemrogram (programmer). Untuk dapat melakukan pemrograman, diperlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan di banyak kasus, pengetahuan-pengetahuan lain seperti matematika.
Pemrograman adalah sebuah seni dalam menggunakan satu atau lebih algoritma yang saling berhubungan dengan menggunakan sebuah bahasa pemrograman tertentu sehingga menjadi sebuah program komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya pemrograman ini biasa disebut paradigma pemrograman.
- Karakteristik algoritma
pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik. Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukanaproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya. Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menungguberjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut.
- Flowchart
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung. Ada dua macam flowchart yang menggambarkan proses dengan komputer, yaitu :
- 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:
-
Flowchart program yaitu bagan dengan
simbol-simbol tertentu yang menggambarkan urutan proses dan hubungan antar
proses secara mendetail di dalam suatu program.
-
Psoudecode
Definisi Pseudo-code
Kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritmaContoh kasus : mencari bilangan terbesar dari dua bilangan yang diinputkan
Definisi Pseudo-code
Kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritmaContoh kasus : mencari bilangan terbesar dari dua bilangan yang diinputkan
-
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.
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.
Langganan:
Postingan (Atom)