Minggu, 22 September 2013

Laporan Praktikum Dasar Pemrograman D3 MI-B UNESA



LAPORAN PRAKTIKUM DASAR PEMROGRAMAN
logo3.jpg


OLEH:
Maizatul Azuroh
NIM:135623038



1.Dasar Teori
 - Dasar Teori tentang algoritma dan 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.
ilustrasi proses pemrograman adalah sebagai berikut:                                                                  
diagrAlirPemrograman



            Secara garis besar sistem computer terdiri dari 2 bagian utama yaitu perangkat keras dan perangkat lunak. Perangkat keras bertugas untuk memproses fakta dan data menjadi informasi yang diperlukan. Sedangkan perangkat lunak bertugas untuk mengatur pemrosesan data dan fakta menjadi sebuah informasi. Jadi kedua bagian ini merupakan satu sistem yang tidak dapat dipisahkan satu dengan yang lainnya. Keduanya saling memiliki keterkaitan bekerja sesuai dengan fungsinya masing-masing untuk mencapai satu tujuan yakni memperoleh informasi yang diperlukan user.

-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, pada akhirnya nilai n = 0. Program yang tidak pernah berhenti mengindikasikan bahwa program tersebut berisi algoritma yang slah.
2.Setiap langkah harus didefinisikan dengan tepat dan tidak berarti dua (ambigious). Pembaca harus mengerti apa yang dimaksud “m” dan “n” adalah bilangan bulat tak negative (-). Contoh lainnya pernyataan “ bagilah p dengan beberapa sejumlah bilangan bulat positif “ dapat bermakna ganda. Berapakah yang dimaksud dengan “berapa”? Algoritma menjadi jelas jika langkah tersebut ditulis “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  mempunyai 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.
- Flowchart
Flowchart adalah cara lain menuliskan algoritma. Cara ini sudah jarang dipakai karena sangat menyita waktu dan kertas. Keunggulan flowchart: alur program sangat mudah dibaca/ditelusuri.
-Psoudecode
Pseudecode adalah bahasa yg digunakan untuk menyederhanakan penulisan algoritma dan bukan bahasa pemrograman.
-Bahasa Pemrograman
Perkembangan bahasa pemrograman dimulai dari bahasa mesin, low level language, High level language, Deklaratif dan object oriented. Perkembangan bahasa pemrograman generasi I ( bahasa mesin ) dimulai pada tahun 1945 oleh Mauchly dan Eckert menggunakan kode biner 0 dan 1. Bahasa generasi ini rumit, sulit dihafal dan lama. Kemudian dikembangakan dengan bilangan octal dan hexadecimal.
Sedangkan bahasa pemrograman generasi kedua low level language merupakan penyempurnaan dari bahasa mesin. Dalam bahasa ini mulai menggunakan bahasa inggris meskipun masih dalam bentuk singkat dan mesin dependent. Penulisan bahasa assembly sudah jauh lebih mudah dibandingkan dengan bahasa mesin, namun masih terlalu sulit bagi orang awam yang tidak memahami perangkat keras computer, karena beberapa variable masih mengacu ada register, alamat memory maupun port I dan O
Bahasa pemrograman generasi ketiga high level language telah mesin independent dan diikuti oleh bahasa pemrograman basic. Cobol, Pascal, Algol, Prolog dan lain-lain. Pemrosesan program oleh komputer meliputi compilation, Link dan execution.
Pada bahasa pemrograman dengan bahasa pemrograman generasi keempat ini jauh lebih mudah ditulis karena intruksinya sudah sangat mendekati bahasa percakapan sehari-hari. Contohnya misalnya Dbase, SQL ( Structured Query Language )
Pada bahasa pemrograman generasi kelima Object Oriented language menggunakan Simula, SmallTalk, Ada, C++, atatu Java.

2.Langkah-langkah pemecahan masalah
Pemecahan masalah no.1
 kita tidak bisa langsung mempertukarkan air dalam kedua ember tadi begitu saja sebab cara seperti itu menyebabkan terjadinya percampuran. Agar bisa dipertukarkan, kita memerlukan sebuah ember tambahan sebagai tempat penanganan sementara, misalkan tambahan tersebut  adalah ember C.  dengan menggunakan ember C ini, algoritma pertukaran isi kedua buah ember adalah sebagai berikut:
            -Tuangkan air dari ember A ke dalam ember C
            -Tuangkan air dari ember B ke dalam ember A
            -Tuangkan air dari ember C ke dalam ember B

Pemecahan Masalah no.2
Algoritma mendapatkan air 4liter dari buah ember ber-volume 5 dan 3 liter
-Isi penuh ember 3 liter dengan air (ember 3 liter berisi 3 liter air)
-Tuangkan air dari ember 3 liter kedalam emeber air 5 liter (ember 5 liter sekarang berisi 3 liter air)
-Isi penuh kembali ember 3 liter dengan air (ember 3 liter berisi 3 liter air)
-Tuangkan air dari ember 3 liter kedalam ember 5 liter hingga penuh (didalm ember 3 liter sekarang tersisa 1 liter air)
-Buang seluruh air dari ember 5 liter (ember 5 liter kosong)
-Tuangkan air dari ember 3 liter(yang tersisa 1 liter)kedalam ember 5 liter (ember 5 liter sekarang berisi 1 liter air, dan ember 3 liter kosong)
-Isi penuh ember 3 liter dengan air (ember 3 liter berisi 3 liter air)
-Tuangkan air dari ember 3 liter kedalam ember 5 liter (ember 5 liter sekarang berisi 1+3=4 liter air)

Pemecahan Masalah no.3
-Pertama mulailah dengan anak yang 1 detik dan 3 detik
-Kedua kembalikan anak yang 1 detik
-Ketiga kirim lagi anak yang 1 detik dengan ibu yan 6 detik
-Keempat kembalikan anak yang 3 detik
-Kelima kirim bapak yang 8 detik dan kakek yang 12 detik
-Keenam kembalikan anak yang 1 detik untuk menjemput anak yang 3 detik
       -Finish

 Pemecahan masalah no.4
-Mulanya  kanibal A dan B diberangkatkan
-Setelah sampai keluarkan kanibal A
-Lalu berangkatkan kanibal B dan masukkan kanibal C kemudian sebrangkan mereka
-Keluarkan kanibal B dan sebrangkan kanibal C
-Kemudian keluarkan kanibal C dan sebrangkan rahib A dan B
-Keluarkan rahib A dan masukkan kanibal A, lalu sebrangkan mereka
-Keluarkan kanibal  A dan masukkan rahib C, lalu sebrangkan mereka
-Keluarkan rahib  B dan C, lalu masukkan dan sebrangkan kanibal B
-Kemudian masukkan kanibal A, sebrangkan mereka
-Keluarkan kanibal A, sebrangkan kanibal B
-Masukkan kanibal C lalu sebrangkan dan selesai.

Pemecahan Masalah no.5
-Pertama petani berangkat menyebrangi sungai dengan membawa kambing
-Kedua petani kembali dan menyebrang dengan  membawa rumput
-Ketiga petani kembali dengan membawa kambing dan menyebrang lagi membawa anjing
-Keempat petani kembali dan membawa kambing
-Finishing

3.Referensi