Jumat, 27 September 2013
Minggu, 22 September 2013
Algoritma
DASAR TEORI
Apakah Itu Algoritma ???
“Algoritma adalah urutan langkah-langkah logis
penyelesaian masalah yang disusun secara sistematis dan logis”. Kata logis merupakan
kata kunci dalam algoritma. Langkah-langkah
dalam algoritma harus logis dan harus dapat ditentukan
bernilai salah atau benar. Dalam beberapa
konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu.
Pertimbangan dalam pemilihan algoritma adalah, pertama,
algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah
masukan yang diberikan. Tidak peduli sebagus
apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma
tersebut bukanlah algoritma yang baik.
Beda Algoritma dan Program
Program
|
adalah kumpulan
pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program
adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi
bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman.
Beberapa pakar memberi formula bahwa :
Program
= Algoritma + Bahasa (Struktur Data)
Bagaimanapun
juga struktur data dan algoritma berhubungan sangat erat pada sebuah program.
Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat
program menjadi kurang baik, demikian juga sebaliknya.
Algoritma
adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu komputer yang
mengarah ke dalam terminologi algoritma. Namun, jangan beranggapan algoritma
selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari pun
banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat
kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai
algoritma. Pada setiap resep selalu ada urutan langkah-langkah membuat masakan.
Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan yang
diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per satu
langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca.
Secara umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut
dapat berupa manusia, komputer, robot atau alat-alat elektronik lainnya.
Pemroses melakukan suatu proses dengan melaksanakan atau “mengeksekusi”
algoritma yang menjabarkan proses tersebut.
Algoritma
adalah deskripsi dari suatu pola tingkah laku yang dinyatakan secara primitif
yaitu aksi-aksi yang didefenisikan sebelumnya dan diberi nama, dan diasumsikan
sebelumnya bahwa aksi-aksi tersebut dapat kerjakan sehingga dapat menyebabkan
kejadian.
Melaksanakan
algoritma berarti mengerjakan langkah-langkah di dalam algoritma tersebut.
Pemroses mengerjakan proses sesuai dengan algoritma yang diberikan kepadanya.
Juru masak membuat kue berdasarkan resep yang diberikan kepadanya, pianis memainkan
lagu berdasarkan papan not balok. Karena itu suatu algoritma harus dinyatakan
dalam bentuk yang dapat dimengerti oleh pemroses.
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
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.
Simbol-Simbol
Gambar berikut
adalah simbol flowchart yang umum digunakan.
Gambar
|
Simbol untuk
|
Keterangan
|
Proses /
Langkah
|
Menyatakan kegiatan
yang akan ditampilkan dalam diagram alir.
|
|
Titik
Keputusan
|
Proses /
Langkah dimana perlu adanya keputusan atau adanya kondisi tertentu. Di titik
ini selalu ada dua keluaran untuk melanjutkan aliran kondisi yang berbeda.
|
|
Masukan /
Keluaran Data
|
Digunakan
untuk mewakili data masuk, atau data keluar.
|
|
Terminasi
|
Menunjukkan
awal atau akhir sebuah proses.
|
|
Garis alir
|
Menunjukkan
arah aliran proses atau algoritma.
|
|
Kontrol /
Inspeksi
|
Menunjukkan
proses / langkah dimana ada inspeksi atau pengontrolan.
|
Pseudocode
Pseudocode
adalah deskripsi dari algoritma pemrograman computer yang menggunakan struktur sederhana
dari beberapa bahasa pemograman tetapi bahasa tersebut hanya ditujukan agar
dapat dibaca manusia. Biasanya yang ditulis dari pseudocode adalah variabel dan
fungsi. Tujuan penggunaan utama dari pseudocod e 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. Dalam
pseudocode, tidak ada syntax standar yang resmi. Karena itu, pseudocode ini
dapat kita terapkan dalam berbagai bahasa pemograman. Tentu saja harus kita
sesuaikan setiap tahap dengan bahasa pemograman yang kita gunakan. Fungsi dari
pseudocode mungkin sama dengan Flowchart. Perbedaannya terletak pada cara
penyampaiannya. Pseudocode menggunakan kata-kata untuk menjelaskan suatu
algoritma, sedangkan Flowchart menggunakan gambar.
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.
2.
LANGKAH LANGKAH PEMECAHAN MASALAH
1.
Memindahkan salah satu
air kedalam ember kosong lain misalkan ember air berwarna merah di pindahkan e
ember kosong lain , kemudian ember air yang berwarna biru di tuangkan ke ember
yang kosong , begitu juga sebaliknya
2.
Water Jars
1. Mengisi penuh kedua ember yang
bervolume air 5 dan 3 liter
2. Masing-masing
air di dalam ember di buang atau disiramkan ½ liter(separuh) ke tanaman ,
sehingga air di ember yg bervolume 5 liter menjadi 2 ½ liter dan ember yang
bervolume 3 liter menjadi 1 ½ liter
3. Kemudian
sisa air di dalam ember di gabungkan jadi 1 dan menghasilkan air yg bervolume 4 liter.
3. plastelina game
1. Nomor
1 dan 3 berjalan terlebih dahulu menyebrangi jembatan ke pulau sebrang,
kemudian nomer 1 kembali ke pulau sebelumnya.
2. Kemudian nomor 8 dan 12 menyusul ke pulau
sebrang dan nomor 3 kembali ke pulau sebelumnya.
3. nomor 1 dan 6 jalan ke pulau sebrang,
kemudian nomor 1 kembali disusul nomor 3 jalan . and FINISH
4. Canibal
Game
1.
2 kanibal menaiki kapal untuk menyebrangi
sungai agar sampai ke pulau B.
2.
1 kanibal turun di pulau sebrang B, satu
kanibal lagi kembali ke pulau A sebelumnya untuk menjemput kanibal ke 2
3.
Sampai di sebrang pulau B kanibal ke2
diturunkan dan kembali ke pulau sebelumnya A dan bertukar tepat dengan 2rahib .
4.
2 rahib menaiki kapal dan menyebrang ke
pulau sebrang B
5.
1 rahib di turunkan di pulau B , kemudian
1 kanibal di naikkan dan dibawa kembali ke pulau A
6.
1 kanibal diturunkan di pulau A dan rahib
terakhir di naikkan untuk di sebrangkan ke pulau B
7.
Ke2 rahib turun di pulau B , dan 1
kanibal dr pulau B menaiki kapal dan menjemput ke 2 kanibal di puau A secara
bergatian
8.
Dan BRAVO .
5. wolf game
1.
Seorang petani membawa kambingnya ke pulau
sebrang , kambing diturunkan dan petani kembali kepulau sebelumnya dengan
membawa anjing.
2.
Anjing di bawa ke pulau sebrang dan diturunkan
, kemudian kambing di bawa kembali oleh petani ke pulau sebelumnya.
3.
Kambing di turunkan, lalu petani membawa
rumput untuk di sebrangkan kepulau sebrang .
4.
Petani kembali kepulau sebelumnya dan
menjemput kambing untuk dibawa kepulau sebrang . WELL DONE
REFERENSI
https://www.google.com/#q=algoritma+dan+pemrograman
CARINA ADJI PRATIWI
NIM :135623057
D3/ MANAJEMEN INFORMATIKA
Sabtu, 21 September 2013
introducing
Assalamu'alaikumm
hii .... :) my name is carina adji pratiwi
hii .... :) my name is carina adji pratiwi
you can call me kar or rin but hmmm you better call me karin
hai blue , thats my favorite colour
june 23th
yeah ... thats my birtday
Alhamdulillah ya allah
thanks for the good condition until now
and Thank you guys u always be my sun shine and thank you for your big support
Langganan:
Postingan (Atom)