NAMA : Siti Eli Rahma
NIM : 135623083
PRODI : D3 Manajemen Informatika (kelas C)
DASAR TEORI
A. Dasar Teori Tentang
Algoritma dan Pemrograman
Dalam
Mempelajari Teori Algoritma dan Pemrograman dalam matakuliah Algoritma dan
Pemrograman, maka perlulah mahasiswa terlebih dahulu mengenal akan
definisi-definisi masing-masing dari kata ‘Algoritma’ serta ‘Pemrograman’.
Algoritma adalah metode untuk
menyelesaikan suatu permasalahan secara bertahap.
Contoh sederhana suatu algoritma
adalah resep suatu masakan. Pada resep suatu masakan terdapat langkah langkah
penyelesaian untuk membuat masakan itu. Misalkan untuk membuat telur rebus,
maka diperlukan langkah langkah:
1. Cuci
bersih telur yang akan direbus.
2. Siapkan
air pada panci.
3. Rebus
air hingga mendidih.
4. Masukkan
telur yang sudah dicuci kedalam air yang telah direbus.
5. Tunggu
hingga matang dan sajikan
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.
B. Karakteristik Algoritma
Algoritma
memiliki beberapa karakteristik yang harus dipenuhi agar menjadi algoritma yang
baik, antara lain:
·
Ada Output
·
Efektif dan Efisien
·
Jumlah langkahnya berhingga
·
Berakhir
·
Terstruktur
·
Presisi, langkah penyelesaian masalah dalam algoritma haruslah secara
presisi (tepat) dinyatakan, tidak mengandung ambiguitas.
·
Keterbatasan,
Algoritma harus terbatas dan berhenti pada suatu titik setelah semua ekesekusi
dilaksanakan.
·
General, berlaku untuk suatu
kumpulan input tertentu.
C. FLOWCHART
Flowchart adalah penggambaran secara grafik dari
langkah-langkah dan urut-urutan prosedur dari suatu program. Flowchart menolong
analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih
kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam
pengoperasian.
Flowchart biasanya mempermudah penyelesaian suatu
masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.
Jenis - Jenis Flowchart
Flowchart terbagi atas lima jenis, yaitu :
1. Flowchart
Sistem (System Flowchart)
2. Flowchart
Paperwork / Flowchart Dokumen (Document Flowchart)
3. Flowchart
Skematik (Schematic Flowchart)
4. Flowchart
Program (Program Flowchart)
5. Flowchart
Proses (Process Flowchart)
Simbol - Simbol Flowchart
Flowchart disusun dengan simbol-simbol. Simbol
ini dipakai sebagai alat bantu menggambarkan proses di dalam program.
Simbol-simbol yang dipakai seperti contoh di bawah ini :
Flow Direction symbol
Yaitu
simbol yang digunakan untuk menghubungkan antara simbol yang satu dengan simbol
yang lain. Simbol ini disebut juga connecting line.
Terminator Symbol
Yaitu simbol untuk permulaan (start) atau akhir
(stop) dari suatu kegiatan
Connector Symbol
Yaitu simbol untuk keluar – masuk atau
penyambungan proses dalam lembar / halaman yang sama.
Connector Symbol
Yaitu simbol untuk keluar – masuk atau
penyambungan proses pada lembar / halaman yang berbeda.
Processing Symbol
Simbol yang menunjukkan pengolahan yang
dilakukan oleh komputer
Simbol Manual
Operation
Simbol yang menunjukkan pengolahan yang tidak
dilakukan oleh komputer
Simbol Decision
Simbol pemilihan proses berdasarkan kondisi
yang ada.
Simbol Input-Output
Simbol yang menyatakan proses input dan output
tanpa tergantung dengan jenis peralatannya
Simbol Manual Input
Simbol untuk pemasukan data secara manual
on-line keyboard
Simbol Preparation
Simbol untuk mempersiapkan penyimpanan yang akan digunakan sebagai tempat pengolahan di dalam storage.
Simbol Predefine
Proses
Simbol Display
Simbol yang menyatakan peralatan output yang digunakan yaitu layar, plotter, printer dan sebagainya.
Simbol disk and
On-line Storage
Simbol magnetik tape
Unit
Simbol yang menyatakan input berasal dari pita
magnetik atau output disimpan ke pita magnetik.
Simbol Punch Card
Simbol Dokumen
Simbol yang menyatakan input berasal dari
dokumen dalam bentuk kertas atau output dicetak ke kertas.
D.
PSEUDOCODE
Pseudocode adalah kode
yang menyerupai bahasa program sesungguhnya dengan penjelasan cara
menyelesaikan suatu masalah dan tidak ada aturan dalam penulisannya serta
ditujukan untuk dibaca manusia (bukan mesin).
Kelemahan dari
pseudocode sendiri adalah kesulitan yang dijumpai bila algoritmanya banyak
mengandung penyeleksian kondisi,
sehingga semakin banyak kondisi yang perlu diperhatikan, akan semakin
rumit penulisan pseudocodenya.
Biasanya yang ditulis dari pseudocode adalah
variabel dan fungsi. Tujuan penggunaan utama dari pseudocode adalah untuk
memudahkan manusia dalam memahami prinsip-prinsip dari suatu algoritma.
Penggunaan pseudocode umumnya banyak kita temukan di buku-buku dan
artikel-artikel tentang pemrograman yang membahas tentang algoritma tertentu.
Kadang pula pseudocode kita temukan dalam merencanakan pengembangan suatu
program komputer.
E.
Bahasa Pemrograman
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:
- Bahasa Mesin, yaitu memberikan perintah
kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
- 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.
- 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.
- 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.
MODUL 1
PRAKTIKUM DASAR
PEMROGRAMAN
Topik :
Pemahaman Algoritma
1.
Misalkan
terdapat dua gelas, yakni gelas “A” dan “B”. Gelas A berisi air berwarna merah,
dan gelas B berisi air berwarna biru. Volume air di dalam kedua gelas sama.
Bagaimana mempertukarkan isi kedua gelas sehingga gelas A berisi air berwarna
biru, dan gelas B berisi air berwarna merah.
Kondisi
awal:
Gelas A Gelas
B
Kondisi
akhir:
Gelas A Gelas
B
2.
Misalkan
anda mempunyai dua ember, masing-masing ber-volume 5liter dan 3 liter. Anda
diminta untuk mendapatkan air (dari sebuah danau) sebanyak 4 liter dengan
menggunakan bantuan hanya kedua ember tersebut. Terserah bagaimana caranya,
anda boleh memindahkan air dari satu ember ke ember yang lain, membuang seluruh
isi ember, dan sebagainya. Catatan: ember
tidak memiliki ukuran.
Pertanyaan: Tuliskan langkah-langkah untuk
mendapatkan air 4 liter tersebut.
3.
(plastelina
game) Ada sebuah keluarga terdiri dari 5 orang, akan menyeberang
melewati jembatan pada malam hari dengan bantuan lampu yang hanya bisa bertahan
30 detik, dengan catatan:
a.
Setiap
orang mempunyai kecepatan yang berbeda-beda (1, 3, 6, 8, dan 12 detik).
b.
Apabila
yang melewati jembatan ada 2 orang, maka kecepatannya akan dihitung berdasarkan
yang paling lambat.
Pertanyaan:
tuliskan langkah-langkah secara detail untuk menyelesaikan game tersebut.
4.
(Canibal
Game)
Bagaimana caranya untuk menyeberangkan tiga rahib dan 3 kanibal ke pulai di
seberang, dengan catatan:
a.
Perahu
maksimal dapat ditumpangi dua orang.
b.
Perahu
tidak dapat berjalan sendiri (tanpa penumpang)
c.
Jika
jumlah rahib lebih sedikit dari kanibal, maka rahib akan dimakan oleh kanibal.
Pertanyaan: tuliskan langkah-langkah secara
detail untuk menyeberangkan rahib dan kanibal ke pulai seberang.
5.
(wolf
game) seorang petani akan bepergian ke kota dengan membawa se-ekor
kambing , anjing, dan rumput yang ketiganya memiliki berat yang tidak jauh
berbeda. Ditengah jalan, petani harus menyeberangi sungai dengan menggunakan
perahu dan untuk melaluinya petani tersebut tidak diperbolehkan membawa
sekaligus bawaanya mengingat kapasitas kekuatan perahu tersebut, dan untuk
melaluinya petani harus membawa satu per-satu bawaannya, dengan catatan:
a.
Kambing
makan rumput
b.
Anjing
makan kambing
Pertanyaan: tuliskan langkah-langkah secara
detail untuk menyeberangkan semua barang bawaan petani tersebut, dan berapa
kali petani harus membawa satu-persatu bawaanya.
Format
Laporan
1.
Dasar
Teori
-
Dasar
Teori tentang algoritma dan pemrograman
-
Karakteristik
algoritma
-
Flowchart
-
Psoudecode
-
Bahasa
pemrograman
2.
Langkah-langkah
pemecahan masalah
3.
referensi
JAWABAN
GAMES LOGIKA
1.
Ø Siapkan
gelas C
Ø Kemudian
tuangkan gelas isi A ke dalam gelas C
Ø Tuangkan
lagi gelas isi B ke dalam gelas A
Ø Tuangkan
lagi isi gelas C ke dalam gelas B
2.
Ø Ember
A 5 liter
Ø Ember
B 3 liter
Ø Isi
ember A sebanyak 5 liter
Ø Tuangkan
isi ember A ke dalam ember B sebanyak 3 liter
Ø Ember
A telah tersisa 2 liter
Ø Buang
isi ember B sebanyak 3 liter
Ø Tuangkan
sisa isi ember A ke dalam ember B sebanyak 2 liter
Ø Isi
ember A sebanyak 5 liter
Ø Tuangkan
isi ember A ke dalam ember B sebanyak 1 liter
Ø Sisa
ember A sebanyak 4 liter
Ø Buang
semua isi ember B sebanyak 3 liter
Ø Jadi, sisa di ember A sebanyak 4
liter
3.
Ø orang
yang pertama menyeberang adalah orang yang ke 3 dan 1 dalam waktu 3 detik
Ø kemudian
orang ke 1 kembali menjemput orang ke 6 dalam waktu 1 detik
Ø kemudian
orang ke 6 dan 1 menyeberang dalam waktu 6
detik
Ø orang
ke 1 kembali lagi dalam waktu 2 detik
Ø kemudian
orang ke 12 dan 8 menyeberang dalam waktu 12
detik
Ø kemudian
orang ke 3 kembali untuk menjemput orang ke 1 dalam waktu 3 detik
Ø kemudian
orang ke 3 dan 1 menyeberang dalam waktu 3
detik
Ø Jadi, semua orang sudah menyeberang
dalam waktu 30 detik
4.
Ø Setelah
sampai disebrang, keluarkan K1
Ø Lalu
sebrangkan K2 dan masukkan K3 lalu sebrangkan mereka
Ø Keluarkan
K2 sebrangkan K3
Ø Keluarkan
K3 sebrangkan M1 dan M2
Ø Keluarkan
M1 masukkan K1, lalu sebrangkan mereka
Ø Keluarkan
K1 masukkan M3, lalu sebrangkan mereka
5.
Ø Yang
pertama di bawah menyeberang adalah kambing
Ø Kemudian
petani kembali untuk menyeberangkan anjingnya
Ø Kemudian
dombanya dibawa lagi ketempat semula supaya tidak di makan anjingnya
Ø Kemudian
petani menyeberangkan rumputnya
Ø Dan
yang terakhirpetaniharuskembalilagiuntukmenyeberangkankambingnya
Ø Petani
harus bolak balik sebanyak 4-5 kali untuk menyeberangkan bawaannya
Tidak ada komentar:
Posting Komentar