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
  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.
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:
  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
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

GO GREEN


introducing

Assalamu'alaikumm
 
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