PRAKTIKUM MODUL 1
DASAR PEMROGRAMAN
DASAR PEMROGRAMAN
1. Dasar Teori
1.1 Dasar Teori Algoritma Dan
Pemograman
Algoritma berasal dari kata algoris dan ritmis yang
pertama kali ditemukan oleh Abu Jafar Mohhamed Ibn Musa al Khowaritzmi (825 M)
dari buku Al Jabr Wa al Muqabla. Dalam bidang pemrograman algoritma
didefinisikan sebagai suatu metode khusus yang tepat dan terdiri dari
serangkaian langkah yang terstruktur dan dituliskan secara sistematis yang akan
dikerjakan untuk menyelesaikan masalah dengan bantuan komputer.
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. Adapun ilustrasi proses pemrograman
sebagai berikut ini :
1.2 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.
1.3 Flowchart
Bagan
Alir (Flowchart) merupakan bagan yang
menunjukkan arus alir (Flow) program
atau prosedur sistem secara logika. Adapun beberapa simbol-simbol dari Bagan
Alir (Flowchart) tersebut dapat kita
lihat pada gambar dibawah ini :
1.4 Pseudocode
Pseudocode atau
dalam bahasa Indonesia lebih dikenal sebagai Kode-palsu merupakan deskripsi tingkat tinggi informal dan ringkas
atas algoritma
pemrograman komputer yang menggunakan
konvensi struktural atas suatu bahasa pemrograman, dan ditujukan untuk dibaca
oleh manusia dan bukan oleh mesin. Kode palsu biasanya tidak menggunakan elemen
detail yang tidak diperlukan untuk kebutuhan pemahaman manusia atas suatu
algoritma, seperti deklarasi variabel, kode ataupun subrutin untuk sistem yang
bersifat spesifik. Bahasa pemrograman yang digunakan lebih diperbanyak dengan
deskripsi dalam bahasa natural atas sesuatu hal yang bersifat detail, atau
dengan menggunakan notasi matematis. Tujuan dari penggunaan kode-palsu adalah
untuk mempermudah manusia dalam pemahaman dibandingkan menggunakan bahasa
pemrograman yang umum digunakan, terlebih aspeknya yang ringkas serta tidak
bergantung pada suatu sistem tertentu merupakan prinsip utama dalam suatu
algoritma. Kode-palsu umumnya digunakan dalam buku-buku ataupun publikasi karya
ilmiah yang mendokumentasikan suatu algortima, dan juga dalam perencanaan
pengembangan program komputer, untuk membuat sketsa atas struktur sebuah
program sebelum program yang sesungguhnya ditulis.
Tidak
ada satu pun standar yang berlaku atas kode-palsu, sebuah program yang masih
berupa kode-palsu tidak dapat dijalankan. Kode-palsu menyerupai pula kerangka
program (skeleton programs), termasuk dummy code, yang bisa
dikompilasi tanpa kesalahan. Diagram alur dapat pula dimasukkan sebagai
alternatif berbasis grafis sebuah kode-palsu.
1.5 Bahasa Pemograman
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
(kode mnemonic), 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.
2. Langkah-Langkah Pemecahan Masalah
A. Memindah air
1. Ambilgelas
lain yang kosong (gelas C)
2. TuangkangelasAberisi
air berwarnamerahkegelas C
3. Tuangkangelas
B berisi air berwarnabirukegelas A
4. Tuangkangelas
C kegelas B.
B. Mengisi ember air
1. Mengisi
ember 3 liter tuangkandalam ember 5 liter
2. Isi
lagi ember 3 liter dantuangkandalam ember 5 liter
3. Buang
air di ember 5 liter
4. Tuangkansisa
air di ember 3 liter ke ember 5 liter
5. Isi
ember 3 liter,tuangkanke ember 5 liter
C. Plastelina game
1. Gunakan
orang 3detik dan orang1detik menujusisi B, dan orang 3detik tinggal di sisi B,
sedangkan orang 1detik kembalikesisi A.
2. Gunakan
orang 6detik dan orang 1detik menujusisi B, dan orang 1detik dan orang 6detik
tinggal diisi B, sedangkan orang 3detik kembalikesisi A.
3. Di
sisi A ada orang 8detik, orang 12detik, dan Si 3detik
4. Gunakan
orang 8detik dan Si 12detik menujusisi B, danlalugunakan orang 1detik
untukmenjemput orang 3detik
5. Lalugunakan
orang 1detik dan Si 3detik menujusisi B.
6. Maka
Akan tersisaSatudetiksebagaiPenyelesaian Dari game tsb
D. Canibal game
1. Mari
kita misalkan, untuk kanibal adalah K1,K2, dan K3 dan untuk Missionaris
M1, M2, dan M3 dan tepi pertama sebagai tepi A dan tepi kedua sebagai tepi
B
2. K1
dan M1 berangkat lebih dulu ketepi B, dan K1 tinggal di tepi B, sedangkan M1
kembali ketepi A
3. M1
turun dari perahu, digantikan oleh K2 dan K3 menuju tepi B, dan K2 tinggal di
tepi B sedangkan K3 kembali ketepi A
4. K3
turun dari perahu, digantikan M1 dan M2 menuju tepi B, dan M1 dan M2 tinggal di
tepi B sedangkan K1 kembali ketepi A
5. K1
dan K2 naik perahu menuju tepi B, dan K2 tinggal di tepi B sedangkan K1 kembali
ketepi A
6. K1
dan K3 naik perahu menuju tepi B, lalu K1 dan K3 sama-sama turun di tepi B.
E. Wolf game
1. Jika
membawa srigala terlebih dulu, maka kambing akan memakan rumput, jika membawa rumput
terlebih dulu, srigala akan memakan kambing
2. Bawa
kambing kesisi A,karena srigala tidak makan rumput
3. Lalu
kembali kesisi A,bawa rumput kesisi B
4. Bawa
kembali kambing kesisi A, dan diturunkan
5. Srigala
di bawa kesisi B,dan petani kembali kesisi A
6. Ambil
kambing dan bawa kesisi B
3. Referensi
Tidak ada komentar:
Posting Komentar