Minggu, 27 Oktober 2013
Kamis, 19 September 2013
PRAKTIKUM DASAR PEMROGRAMAN
PRAKTIKUM MODUL 1
DASAR PEMROGRAMAN
1
DASAR PEMROGRAMAN
1
DASAR
TEORI
1.1
Dasar
Teori Tentang Algoritma dan Pemrograman
Program
adalah kata, ekspresi, pernyataan atau kombinasi yang disusun dan dirangkai
menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan
masalah dan diimplementasikan dengan menggunakan bahasa pemrograman sehingga
dapat dieksekusi oleh komputer.
Pemrograman
adalah proses mengimplementasikan urutan langkah untuk menyelesaikan suatu
masalah dengan menggunakan suatu bahasa pemograman. Sedangkan pemrograman
terstruktur adalah metode untuk mengorganisasikan dan membuat kode-kode program
supaya mudah untuk dimengerti, mudah di test dan di modifikasi.
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.
Hubungan antara
algoritma, masalah dan solusi dapat digambarkan sebagai berikut :
Proses
dari masalah hingga terbentuk suatu algoritma disebut tahap pemecahan masalah,
sedangkan tahap dari algoritma hingga terbentuk suatu solusi disebut dengan
tahap implementasi. Solusi yang dimaksud adalah suatu program yang merupakan
impelementasi dari algoritma yang disusun.
CONTOH:
Algoritma
ketika ingin mengirimkan surat kepada teman, yaitu :
1.
Tulis
surat pada secarik kertas surat
2.
Ambil
sampul surat
3.
Masukkan
surat ke dalam sampul
4.
Tutup
sampul surat menggunakan perekat
5.
Tempel
perangko pada surat
6.
Bawa
surat ke kantor pos untuk di poskan
Ciri-ciri
algoritma pemrograman yang baik adalah :
1.
Memiliki
logika perhitungan atau metode yang tepat dalam memecahkan masalah
2.
Menghasilkan
output yang tepat dan benar dalam waktu yang singkat
3.
Ditulis
dengan bahasa yang standar secara sistematis dan rapi
4.
Ditulis
dengan format yang mudah
5.
Dipahami
dan diimplementasikan ke dalam bahasa pemrograman.
6.
Semua
operasi yang dibutuhkan terdefinisi dengan jelas.
7.
Semua
proses harus berakhir setelah sejumlah langkah dilakukan
1.2 Karakteristik Algoritma
Algoritma sebagai
kumpulan langkah-langkah dikatakan sebagai algoritma yang baik jika memiliki
kriteria sebagai berikut:
- setiap langkah yang ada pada algritma harus definite (jelas dan pasti). Sebagai contoh jika n mod 2 = 1 maka n adalah bilangan ganjil. Ini adalah sebuah pernyataan yang jelas dan pasti. Berbeda dengan pernyataan ganjil ?. Pernyataan yang kedua adalah pernyataan yang tidak jelas karena tidak didefinisikan apakah yang ganjil.
- Algoritma atau program minimal memiliki sebuah output. Program atau algoritma yang tidak memilikioutput tidak akan dapat diketahui hasil dari penyelesaian masalah.
- Harus ada stoping criteria yaitu kondisi yang membuat program tersebut berhenti. Jika program tidak memiliki stoping criteria maka program tidak dapat berhenti yang dapat mengakibatkan komputer hang.
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) menurut
Mulyadi (2001) tersebut dapat kita
lihat pada tabel 1.1 dibawah ini :
Tabel 1.1
Bagan Alir (Flowchart)
1.4 Pseudocode
Kode-palsu atau dalam
bahasa inggris lebih dikenal sebagai pseudo-code 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.
Contoh Sederhana penggunaan Pseudocode:
<variable> = <expression>
if <condition>
do
stuff
else
do
other stuff
while
<condition>
do
stuff
for <variable>
from <first value> to <last value> by <step>
do
stuff with variable
function <function
name>(<arguments>)
do
stuff with arguments
return something
<function
name>(<arguments>) // Function call
1.5 Bahasa
Pemrograman
Bahasa
pemrograman adalah istilah yang menerangkan bahasa yang dapat dimengeri
oleh komputer. Dalam dunia komputerm dikenal 2 jenis bahasa pemrograman, yaitu
bahasa pemrograman tingkat tinggi dan bahasa pemrograman tingkat rendah.
Sebuah
bahasa pemrograman atau bahasa komputer di artikan sebagai teknik komunikasi yang
terstandarisasi untuk menyatakan instruksi kepada komputer. Bahasa pemrograman
adalah kesatuan aturan sintaksis dan semantik yang di gunakan untuk
mendefinisikan program.
Sebuah bahasa pemrograman memungkinkan programer untuk menentukan secara tepat apa yang harus dilakukan oleh komputer, cara mengatur transfer data, input-output, dan kegiatan-kegiatan yang harus dilakukan dalam berbagai keadaan.
Sebuah bahasa pemrograman memungkinkan programer untuk menentukan secara tepat apa yang harus dilakukan oleh komputer, cara mengatur transfer data, input-output, dan kegiatan-kegiatan yang harus dilakukan dalam berbagai keadaan.
Perkembangan
teknologi yang sangat cepat menghasilkan berbagai macam kebutuhan komputasi
yang beraneka ragam. Oleh karena itu, muncul berbagai bahasa pemrograman yang
berguna untuk memecahkan berbagai macam masalah dengan bantuan komputer.
2
Langkah-Langkah
Pemecahan Masalah
1)
Menukarkan isi air dalam gelas
Agar isi di di gelas A bisa ditukar ke gelas
B kita memerlukan sebuah gelas tambahan untuk tempat penampungan sementara, dan
kita namakan gelas tambahan tersebut adalah gelas C dan dengan menggunakan gelas C ini sebagai media pertukaran, algoritma pertukaran isi kedua buah gelas
adalah sebagai berikut :
a
Tuangkan
air dari Gelas A ke dalam Gelas C.
b
Tuangkan
air dari Gelas B ke dalam Gelas A.
c
Tuangkan
air dari Gelas B ke dalam Gelas A.
d
Tuangkan
air dari Gelas C ke dalam Gelas B.
2)
Logic water jars
Tuliskan langkah-langkah untuk
mendapatkan air 4 liter tersebut?
a.
Isi
penuh ember yang berkapasitas 3 liter dengan air
b Tuangkan
air dari ember 3 liter tersebut ke dalam
ember yang berisi 5 liter air dan sekarang ember yang berkapasitas 5 liter
tersebut telah berisi 3 liter air.
c. Isi
penuh kembali ember yang berkapasitas 3 liter tersebut dan sekarang ember yang berkapasitas 3 liter
tersebut berisi 3 liter air.
d Tuangkan
air dari ember yang berkapasitas 3 liter tersebut ke dalam ember yang berkapasitas 5 liter hingga penuh dan
sekarang di dalam ember 3 liter tersebut
sekarang tersisa 1 liter air.
e Buang
seluruh air dari ember 5 liter air dan ember yang berkapasitas 5 liter tersebut
akan kosong.
f. Tuangkan
air dari ember 3 liter yang tersisa 1
liter tadi kedalam ember yang
berkapasitas 5 liter dan ember 5 liter
sekarang berisi 1 liter air dan ember 3 liter akan kosong.
g.
Isi
penuh ember 3 liter dengan air dan ember 3 liter tersebut akan berisi air 3 liter.
h.
Tuangkan
air dari ember 3 liter ke dalam ember 5 liter dan ember 5 liter sekarang berisi
1ltr + 3ltr = 4 liter air.
3)
Plastelina Game
a. Pertama-tama seberangkan orang yang mempunyai
kecepatan 1 DETIK DAN 3 DETIK. (Waktu yang tersisa adalah 30 detik - 3 detik =
27 detik)
b. orang yang mempunyai
kecepatan 1 detik akan kembali
menyeberang untuk menjemput orang yang berkecepatan 6 detik. (waktu yang tersisa 27 detik - 1 untuk
orang yang menyeberangkan lampu = 26 detik)
c. orang yang berkecepatan 1 detik dan 6 detik akan
menyeberang, lalu orang yang berkecepatan 1 detik akan kembali lagi. waktu yang
tersisa adalah 26 detik – 6 detik – 1 detik
= 19 detik)
d. kemudian seberangkan secara bersama-sama orang
yang mempunyai kecepatan 12 detik dan orang yang mempunyai kecepatan 8 detik
dan di langkah ini akan berkurang 12 detik saja karena yang membawa lampu
adalah orang yang mempunyai kecepatan 12 detik. (waktu yang tersisa 19 detik –
12 detik untuk orang yang memegang lampu = 7 detik)
e. kemudian orang yang berkecepatan 3 detik akan
kembali untuk menjemput orang yang berkecepatan 1 detik (waktu yang tersisa 7
detik – 3 detik = 4 detik)
4)
Canibal Game
Pertama tama kita harus menginisialisasikan 3 orang misionaris
dan 3 orang kanibal sebagai berikut:
1
M1 = Misionaris 1
2
M2 = Misionaris 2
3
M3 = Misionaris 3
4
K1 = Kanibal 1
5
K2 = Kanibal 2
6
K3 = Kanibal 3
Penyelesaiannya
adalah:
a
Sebrangkan K1 dan K2 terlebih dahulu.
b Setelah sampai disebrangkan lalu keluarkan K1
c . Lalu sebrangkan K2 dan masukkan K3 ke dalam perahu
lalu sebrangkan mereka
d Keluarkan K2 lalu seberangkan K3
e Keluarkan K3 sebrangkan M1 dan M2
f Keluarkan M1 masukkan K1, lalu sebrangkan mereka
g Keluarkan K1 masukkan M3, lalu sebrangkan mereka
h Keluarkan M2 dan M3, lalu sebrangkan K2
i Masukkan K1, untuk menyebrangkan mereka
j Keluarkan K1, sebrangkan K2
k Masukkan K3 lalu sebrangkan
5)
Wolf game
Langkah-langkah
penyelesaian wolf game ini adalah sebagai berikut
a
Seberangkan kambingnya terlebih dahulu.
b
Seberangkan sayurannya dan bawa kembali
kambingnya ke sisi awal.
d
Sekarang angkut serigalanya dan seberangkan.
e
Balik lagi sendiri lalu ambil kambingnya menuju
sisi B.
3
REFERENSI