TUGAS PRAKTIKUM MODUL 1
DASAR PEMROGRAMAN
Hendry Setiawan / 105623306
1. Dasar Teori
-
Dasar
Teori tentang algoritma dan pemrograman
Dasar
Teori Algoritma
Algoritma berasal dari kata algoris dan
ritmis yang pertama kali diungkapkan oleh Abu Ja’far Mohammad Ibn Musa
Al Khowarizmi (825M) dalam buku Al-Jabr Wa-al Muqobla. Dalam pemrograman
algortima berarti suatu metode khusus yang tepat dan terdiri dari serangkaian
langkah-langkah yang terstruktur dan dituliskan secara sistematis yang akan dikerjakan untuk
menyelesaikan masalah dengan bantuan komputer.
Secara
sederhanya algoritma dapat didefinisikan urutan langkah-langkah logis
penyelesaian masalah yang disusun secara sistematis. Kata logis berarti bahwa
nilai kebenarannya harus dapat ditentukan, benar atau salah. Langkah-langkah
yang tidak benar dapat memberikan hasil yang salah.
Dasar Teori Pemrograman
Menurut
Binanto (2005:1) kata program dapat diartikan:
1. Untuk mendeskripsikan instruksi-instruksi tersendiri, yang biasanya disebut source code, yang dibuat programmer.
1. Untuk mendeskripsikan instruksi-instruksi tersendiri, yang biasanya disebut source code, yang dibuat programmer.
2.
Untuk mendeskripsikan suatu keseluruhan bagian dari software yang
executable.
Dapat juga dikatakan bahwa sebuah program merupakan himpunan atau kumpulan instruksi tertulis yang dibuat oleh programmer atau suatu bagian executable dari sebuah software.
Pengertian Pemrograman menurut Jogiyanto
(2005:582) merupakan “kegiatan menulis kode program yang akan dieksekusi oleh
komputer”.
-
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.
-
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.
-
Algoritma
harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat di
kerjakan dalam sejumlah waktu yang masuk akal.
-
Flowchart
Adalah Bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah
penyelesaian suatu masalah. Flowchart merupakan cara penyajian dari suatu
algoritma
Tujuan
Membuat Flowchat :
•
Menggambarkan suatu tahapan penyelesaian masalah
• Secara
sederhana, terurai, rapi dan jelas
• Menggunakan simbol-simbol standar
Dalam penulisan Flowchart dikenal dua model, yaitu Sistem
Flowchart dan Program Flowchart
System Flowchart :
Yaitu : bagan yang memperlihatkan
urutan prosedure dan proses dari beberapa file di dalam media tertentu.
Melalui flowchart ini
terlihat jenis media penyimpanan yang dipakai dalam
pengolahan data.
• Selain itu
juga menggambarkan file yang dipakai sebagai input dan output.
• Tidak
digunakan untuk menggambarkan urutan langkah untuk memecahkan masalah
• Hanya untuk menggambarkan prosedur dalam
sistem yang dibentu
Program Flowchart
Yaitu:
Bagan yang memperlihatkan urutan dan
hubungan proses dalam suatu program.
Dua jenis
metode penggambaran program flowchart :
1) Conceptual
flowchart, menggambarkan alur pemecahan masalah secara global
2) Detail
flowchart, menggambarkan alur pemecahan masalah secara rinci
-
Psoudecode
Pseudocode
adalah bahasa yang digunakan untuk menyederhanakan penulisan algoritma.
Pseudocode bukan bahasa pemrograman.Pseudocode adalah notasi yang menyerupai
bahasa pemrograman tingkat tinggi. Keuntungan menggunakan notasi pseudo code
adalah kemudahan mengkonversinya lebih tepat yang disebut mentranslasi ke
notasi bahasa pemrograman, karena terdapat korespondensi antara setiap pseudo
code dengan notasi bahasa pemrograman.
-
Bahasa pemrograman
Pengertian bahasa
pemrograman adalah suatu perangkat lunak dan
bahasa yang digunakan untuk membuat program-program komputer atau sering
disebut sebagai bahasa kompute. Bahasa pemrograman menggunakan sistem tata
bahasa tertentu atau kata-kata unik untuk dijadikan kode yang bisa menjalankan
perintah tertentu pada komputer. Bahasa pemrograman inilah yang membentuk
struktur perangkat lunak sebagai inti dari komputer untuk menjalankan perangkat
keras. Tanpa perangkat lunak yang dibuat menggunakan bahasa pemrograman, maka
perangkat keras tidak akan berjalan dengan baik atau bahkan tidak dapat
berjalan sama sekali.
Bahasa pemrograman dibagi menjadi tiga,
yakni bahasa mesin, bahasa pemrograman tingkat rendah dan bahasa pemrograman
tingkat tinggi. Bahasa mesin hanya dipakai untuk membuat sistem inti perangkat
komputer seperti yang tertanam pada BIOS, chip-chip tertentu dan lain
sebagainya. Bahasa ini hanya terdiri dari 0 dan 1 saja yang disebut sebagai
byte. Lalu ada bahasa pemrograman tingkat rendah yakni bahasa assembly yang
digunakan untuk berkomunikasi dengan hardware, membantu komputer mengingat
memori dan terdapatnya alamat simbolis yang berhubungan dengan bahasa mesin.
Sedangkan bahasa pemrograman tingkat tinggi adalah bahasa pemrogaman yang
memiliki baris perintah yang mendekati bahasa manusia sehingga lebih mudah
digunakan.
2.
Langkah-langkah pemecahan masalah
1. Menukar isi air dalam gelas
Algoritma yang benar adalah bahwa untuk menukarkan isi air pada gelas A dengan isi air pada gelas B maka dibutuhkan sebuah gelas bantuan yang dipakai untuk menampung salah satu air dalam gelas tersebut misalkan gelas C.
Sehingga algoritma yang benar dari permasalah diatas adalah :
Sekarang algoritma Tukar_Isi_Gelas diatas sudah diperbaiki, sehingga isi air pada gelas A dan isi air pada gelas B dapat dipertukarkan dengan benar. Hubungan antara algoritma, masalah dan solusi dapat digambarkan sebagai berikut :
2. Logic Water Jars
Algoritma yang benar adalah bahwa untuk menukarkan isi air pada gelas A dengan isi air pada gelas B maka dibutuhkan sebuah gelas bantuan yang dipakai untuk menampung salah satu air dalam gelas tersebut misalkan gelas C.
Sehingga algoritma yang benar dari permasalah diatas adalah :
1. Tuangkan
air dari gelas A ke gelas C
2. Tuangkan air dari gelas B ke gelas A
3. Tuangkan air dari gelas C ke gelas B
2. Tuangkan air dari gelas B ke gelas A
3. Tuangkan air dari gelas C ke gelas B
Sekarang algoritma Tukar_Isi_Gelas diatas sudah diperbaiki, sehingga isi air pada gelas A dan isi air pada gelas B dapat dipertukarkan dengan benar. Hubungan antara algoritma, masalah dan solusi dapat digambarkan sebagai berikut :
Langkah - langkahnya :
1.
Isi penuh ember
3 liter dengan air (ember 3 liter berisi 3 liter air) 2. Tuangkan air dari ember 3 liter ke dalam ember air 5 liter (ember 5 liter, sekarang berisi 3 liter air).
3. Isi penuh kembali ember ember 3 liter dengan air (ember 3 liter berisi 3 liter air).
4. Tuangkan air dari ember 3 liter kedalam ember 5 liter hingga penuh (di dalam ember 3 liter sekarang tersisa 1 liter air).
5. Buang seluruh air dari ember 5 liter air (ember 5 liter kosong)
6. Tuangkan air dari ember 3 liter(yang tersisa 1 liter tadi) kedalam ember 5 liter (ember 5 liter sekarang berisi 1 liter air, ember 3 liter kosong)
7. Isi penuh ember 3 liter dengan air (ember 3 liter berisi air 3 liter)
8. Tuangkan air dari ember 3 liter ke dalam ember 5 liter (ember 5 liter sekarang berisi 1 + 3 = 4 liter air)
Screenshot :
3. Plastelina Game
Langkah
– langkahnya =
1. Orang dengan kecepatan 1 dtk dan kecepatan 12 dtk menyebrang lebih dulu, lalu orang dengan kecepatan 1 dtk kembali ketempat semula.
2. Orang dengan kecepatan 1 dtk dan dengan kecepatan 8 dtk menyebrang, lalu yang kembali orang yang dengan kecepatan 3 dtk.
3. Orang dengan kecepatan 1 dtk dan orang dengan kecepatan 6 dtk menyebrang dan yang kembali orang dengan kecepatan 1 dtk.
4. Orang dengan kecepatan 1 dtk dan dengan kecepatan 3 dtk menyebrang dengan selamat.
5. Selesai.
1. Orang dengan kecepatan 1 dtk dan kecepatan 12 dtk menyebrang lebih dulu, lalu orang dengan kecepatan 1 dtk kembali ketempat semula.
2. Orang dengan kecepatan 1 dtk dan dengan kecepatan 8 dtk menyebrang, lalu yang kembali orang yang dengan kecepatan 3 dtk.
3. Orang dengan kecepatan 1 dtk dan orang dengan kecepatan 6 dtk menyebrang dan yang kembali orang dengan kecepatan 1 dtk.
4. Orang dengan kecepatan 1 dtk dan dengan kecepatan 3 dtk menyebrang dengan selamat.
5. Selesai.
Screenshot:
4. Cannibal game
Langkah - langkahnya:
1. Dua kanibal menyebrang ke posisi kiri, 1 kanibal turun dan 1 kanibal kembali ke posisi kanan.
2. Dua kanibal lagi menyebrang ke posisi kiri, 1 kanibal turun dan 1 kanibal kembali ke posisi kanan lalu turun.
3. Dua rahib menyebrang ke posisi kiri, 1 rahib turun di posisi kiri, 1 rahib dan 1 kanibal menyeberang ke posisi kanan, lalu 1 kanibal turun di posisi kanan.
4. Dua rahib menyebrang ke posisi kiri, lalu 2 rahib turun diposisi kiri, dan 1 kanibal menyeberang ke posisi kanan.
5. Dua kanibal menyeberangin ke posisi kiri, lalu 1 kanibal turun dan 1 kanibal kembali ke posisi kanan.
6. Dua kanibal naik perahu untuk menyeberang ke posisi kiri, lalu 2 kanibal turun di posisi kiri.
7. SELESAI
1. Dua kanibal menyebrang ke posisi kiri, 1 kanibal turun dan 1 kanibal kembali ke posisi kanan.
2. Dua kanibal lagi menyebrang ke posisi kiri, 1 kanibal turun dan 1 kanibal kembali ke posisi kanan lalu turun.
3. Dua rahib menyebrang ke posisi kiri, 1 rahib turun di posisi kiri, 1 rahib dan 1 kanibal menyeberang ke posisi kanan, lalu 1 kanibal turun di posisi kanan.
4. Dua rahib menyebrang ke posisi kiri, lalu 2 rahib turun diposisi kiri, dan 1 kanibal menyeberang ke posisi kanan.
5. Dua kanibal menyeberangin ke posisi kiri, lalu 1 kanibal turun dan 1 kanibal kembali ke posisi kanan.
6. Dua kanibal naik perahu untuk menyeberang ke posisi kiri, lalu 2 kanibal turun di posisi kiri.
7. SELESAI
Screenshot :
5. Wolf Game
Langkah – langkahnya:
1. Petani membawa kambing dan kambing diturunkan diposisi kiri.
2. Petani kembali lagi untuk membawa anjing lalu anjing diturunkan di posisi kiri
3. Petani membawa kambing kembali dari posisi kiri ke kanan, lalu diturunkan
4 Petani membawa rumput keposisi kiri
5. Petani kembali lagi untuk mengambil kambing di posisi kiri
6. Petani membawa kambing dan diturunkan di posisi kanan.
7. SELESAI
Screenshot:
3.
Referensi
No comments:
Post a Comment
your comment