Sabtu, 21 September 2013

Tugas Dasar Pemrograman 1



1.     Dasar Teori
Dalam Mempelajari Teori Algoritma dan Pemrograman dalam mata kuliah Algoritma dan Pemrograman, maka perlulah mahasiswa terlebih dahulu mengenalakan definisi-definisi masing-masing dari kata  ‘Algoritma’ serta ‘Pemrograman’.
Beberapa definisi Algoritma adalah sepertiberikutini :
  • Polapikir 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.
Adapun ilustrasi proses pemrograman, terlihat dalamgambar 1.1. berikutini :


diagrAlirPemrograman
 





KarakteristikAlgoritma
1.     Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Sebagai contoh, dalam algoritma Euclidean, padalangkah 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.     Setiaplangkah 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 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 ke dua bilangan.
5.     Algoritma harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat di kerjakan dalam sejumlah waktu yang masukakal.

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 kebentuk program dengan bahsa pemrograman.

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 sesua idengan data yang dibaca.
  • WRITE: berisi instruksi untuk merekam hasil kegiatan keperlatan output.
  • END: mengakhiri kegiatan pengolahan

Pseudocode

Pseudocode adalah bentuk penulisan algoritma yang menggunakan struktur bahasa pemrograman sederhana. Walaupun pseudocode memakai struktur bahasa pemrograman, pseudocode tidak mengikuti aturan penulisan bahasa pemrograman manapun. Mengapa begitu? Karena pseudocode dituliskan hanya untuk mempermudah seseorang memahami sebuah algoritma. Dengan begitu, pseudocode hanyalah menyerupai kode program saja, dan tidak bisa di mengerti langsung oleh komputer. Pseudocode baru bisa diolah oleh komputer jika telah mengikuti aturan penulisan sebuah bahasa pemrograman. (Bisabahasa C, Java, Pascal, dan lain-lain.)

Contoh-contoh penulisan pseudocode:
1.   Menampilkan tulisan Test
Start
Print “Test”
End

2.  Menampilkan variable berisi tulisan Test
Start
a = “Test”
Print a
End

3.  Menghitung hasil penjumlahan
Start
Read b, c
d = b + c
Print b, “ ditambah “, c, “ hasilnya “, d
End

BahasaPemograman

Bahasa Pemrograman merupakan notasi yang dipergunakan untuk mendeskripsikan proses komputasi dalam format yang dapat dibaca oleh komputer dan manusia. Proses komputasi umumnya Bahasa pemrograman == Komputer adalah mesin yang dapat melaksanakan seperangkat perintah dasar (instruction set). Komputer hanya dapat diberiperintah yang terdiri dari perintah-perintah dasar tersebut.
Perintah-perintah yang lebihrumit (misalnya mengurutkan suatu daftar sesuai abjad) harus diterjemahkan menjadi serangkaian perintah-perintah dasar yang dapat dimengerti komputer (perintah-perintah yang termasuk dalam instruction set komputer tersebut) yang pada akhirnya dapat mennyelesaikan tugas yang diinginkan, meskipun dijalan kandengan beberapa operasi dasar, bukan satu operasi rumit.


2. Hasil penyelesaian modul I Dasar pemrograman

1.     Memindah air
a.     Menambahkan gelas lagi dan di beri label C
b.     Memindahkan isi dari gelasA ke gelas C
c.      Memindahkan isi dari gelas B ke gelas A
d.     Dan terakhir memindahkan isi dari gelas C ke gelas B

2.     Mendapatkan air sebanyak 6 liter
a.     Diketahui ember A bervolume 5 liter dan ember B bervolume 7 liter
b.     Ember A diisi penuh dan isi dari ember A di mesukkan ke ember B
c.      Ember A diisi penuh lagi
d.     2 liter isi dari ember A dimasukkan ke ember B sehingga A berisi 3 liter dan B 7 liter
e.     Isi ember B dibuang dan isi ember A dimasukkan ke ember B
f.       Ember A diisi penuh dan kemudian 4 liter ember A dimasukkan ember B sehingga isinya menjadi ember A 1 liter dan B 7 liter
g.     Isi ember B dibuang dan isi ember A dimasukkan ke ember B dan ember A mengambil air dan diisi penuh
h.     Isi dari ember A dimasukkan ke ember B sehingga berisi 6 liter

3.     Keluarga yang mau menyebrang jembatan
a.     Orang nomor 3 dan nomor 1 menuju sebrang, sedangkan orang nomor 1 kembali ke sisi pertama
b.     Orang nomor 6 dan nomor 1 menuju sebrang, dan sedangkan orang nomor 3 kembali ke sisi pertama
c.      Orang nomor 8 dan nomor 12 menuju sisi sebrang, dan lalu gunakan orang nomor 1 untuk menjemput orang nomor 3
d.     Orang nomor 1 dan nomor 3 menuju sisi sebrang

4.     Kanibal dan manusia
a.     K1 dan K2 naik perahu dan pergi ke sisi B
b.     K1 turun dan K2 kembali ke sisi A
c.      K2 dan K3 naik perahu dan pergi kesisi B
d.     K2 turun dan K3kembali ke sisi A
e.     K3 turun, kemudian M1 dan M2 naik perahu dan pergi ke sisi B
f.       M1 turun, K1 naik dan kanibal ke sisi A
g.     K1 turun, M3 naik dan pergi ke sisi B
h.     M1 dan M3 turun, K2 naik perahu dan kembali kesisi A
i.        K2 naik bersama K1 dan pergi ke sisi B
j.       K1 turun dan K2 kembali ke sisi B
k.     K3 dan K2 naik perahu dan pergi ke sisi B kemudian turun bersama-sama

5.     Wolf game
a.     Jika petani membawa rumput terlebih dahulu maka anjing akan memakan kambing dan jika petani membawa anjing terlebih dahulu maka kambing akan memakan rumput
b.     Maka jalan satu-satunya adalah dengan membawa kambing terlebih dahulu karena anjing tidak akan memakan rumput
c.      Dan kemudian membawa anjing dan rumput secara bergantian 

Referensi:
      Internet