Nama : Dwi
Lestari Ningsih
Kelas : MI B
NIM : 135623059
1.
Dasar Teori
-
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’.
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, terlihat dalam gambar 1.1. berikut ini :
Gambar
1.1. Diagram alir Proses Pemrograman
-
Karakteristik
algoritma
a.
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.
b.
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”
c.
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.
d.
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.
e.
Algoritma
harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat di
kerjakan dalam sejumlah waktu yang masuk akal.
-
Flowchart
Flowchart atau diagram alir merupakan sebuah diagram dengan simbol-simbol grafis yang
menyatakan aliran algoritma atau proses yang menampilkan langkah-langkah yang
disimbolkan dalam bentuk kotak, beserta urutannya dengan menghubungkan masing
masing langkah tersebut menggunakan tanda panah. Diagram ini bisa memberi
solusi selangkah demi selangkah untuk penyelesaian masalah yang ada di dalam
proses atau algoritma tersebut.
-
Psoudecode
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.
-
Bahasa
pemrograman
Bahasa pemrograman, atau sering diistilahkan
juga dengan bahasa komputer atau bahasa
pemrograman komputer, adalah 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.
2.
Langkah-langkah pemecahan masalah
a.
Jawab :
- kita siapkan gelas C (gelas kosong)
- lalu air yang berada di gelas A dituang
ke gelas C
- setelah itu air yang berada di gelas
B di tuang di gelas A. sehingga
gelas A yang semula airnya berwarna
merah menjadi warna biru.
- air yang berada di gelas C dituang ke
gelas B sehingga gelas B yang semula warnanya biru menjadi berwarna merah.
b.
Jawab :
- mengisi masing-masing ember sampai penuh
- setelah itu air yang berada di masing-masing
ember tersebut di buang setengah ember.
-
lalu setengah / sisa air yang diember itu di jadikan satu kedalam wadah
-
sehingga menjadi 4 liter.
c. Jawab
:
-
orang yg berkecepatan 1 dan 3 jalan dulu
- orang yg berkecepatan 1 kembali lalu
orang yang berkecepatan 8 dan 12 jalan
- orang yg berkecepatan 3 kembali lalu orang
yg berkecepatan 1 dan 6 jalan
- orang yg berkecepatan 1 kembali dan orang yg berkecepatan 3 dan 1 jalan
d. Jawab
:
-
2 setan jalan
-
1 setan balik mengambil setan yang nomer tiga lalu jalan.
-
setan turun mengambil 2 biksu lalu jalan
-
biksu turun 1 mengambi setan 1lalu jalan
-
setan 1 turun lalu biksu 2 naik lalu jalan
-
setan menjemput setan
e. Jawab
:
- petani membawa kambing
- lalu petani balik membawa anjing
- lalu petani mengambil kambing lalu kambingnya d taruh
-
lalu petani balik membawa rumput
-
lalu petani membawa kambing
3.
Referensi