Jumat, 13 Mei 2011

Pengertian Algoritma

Pengertian Algoritma

Algoritma merupakan prosedur komputasi yang terdefinisi dengan baik ( dari initial state ke terminal state ) yang menerima himpunan ( input ) untuk menyelesaikan suatu masalah yang menghasilkan himpunan output. Suatu algoritma dikatakan benar apabila himpunan input menghasilkan output yang benar.  Langkah logis berarti algoritma tidak harus mengikuti urutan tertentu, dan tidak melompati langkah yang lain
Contoh algoritma pengurutan angka (sorting) memiliki:
- Input : Himpunan n bilangan (a1, a2, a3, …, an)
seperti: 5, 3, 4, 2, 1
- Output : Himpunan n bilangan terurut (a’1, a’2, a’3, …, a’n)
seperti: 1, 2, 3, 4, 5
Contoh permasalahan yang diselesaikan algoritma:
Human Genome Project mengidentifikasi 100,000 gen DNA manusia yang menentukan 3 miliar pasang kimia pembentuk DNA.
Data tersebut disimpan dalam database dan memerlukan aplikasi analisis data. Algoritma melakukan penyimpanan dan analisis yang cepat.
Internet untuk pencarian informasi melalui mesin pencarian (search engines) : Algoritma membantu pencarian informasi yang cepat dan cerdas.
Peta perjalanan terdapat tempat tujuan yang ingin dicapai dari tempat asal : Algoritma memberikan solusi pencarian jalan terpendek dan tercepat untuk menampilkan rute dari tempat asal ke tempat tujuan tersebut.
Kriteria dari suatu algoritma :
Input: algoritma dapat memiliki nol atau lebih inputan dari luar.Instruksi : sintaks (cara pengkodean) sesuai bahasa pemrograman yang dipakai dan mengandung komponen input, output, proses, seleksi, dan perulangan yang menugaskan komputer untuk mengeksekusi suatu perintah tertentu.
Output: algoritma harus memiliki minimal satu buah output/keluaran.
Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu.
Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role).
Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus dapat dilaksanakan dan efektif
Contoh instruksi yang tidak efektif adalah: A=A+0 atau A=A*1
Program adalah Kumpulan instruksi-instruksi (source code) yang dibuat oleh programmer (pembuat program) untuk menyelesaikan suatu masalah pada komputer
Algoritma menempati posisi di bagian implementasi
Pemrogram melakukan proses coding (pembuatan program).
Bahasa pemrograman : Alat untuk membuat program.
Perbedaan: cara memberikan instruksi.
Persamaan: output/pemecahan masalah yang dicapai.
Contoh bahasa pemrograman:
COBOL (Common Business Oriented Language)
FORTRAN (FORmula TRANslation)
BASIC (Beginner All-purpose Symbolic Instructional Code)
Pascal (dinamakan untuk Blaise Pascal)
Ada (dinamakan untuk Ada Lovelace)
C (pengembang bahasa B)
Visual Basic (mirip BASIC, buatan Microsoft)
Delphi (mirip Pascal, buatan Borland)
C++ (bahasa berorientasi object, berbasiskan C)
C# (mirip Java, buatan Microsoft)
Java
Pengekspresian algoritma :
Alur pengekspresian algoritma dituangkan secara tertulis
Alur pengekspresian: alur pemikiran, sehingga algoritma setiap orang berbeda
Tertulis: algoritma berupa tulisan/kalimat, gambar, atau tabel
Algoritma dapat menggunakan beberapa metode :
Tulisan/kalimat: pseudocode
Pseudocode :
Berasal dari kata pseudo dan code, berarti kode yang tidak sebenarnya Umumnya dimulai dengan kata “BEGIN” dan diakhiri “END”
IF-THEN dan ELSE digunakan untuk operasi percabangan/seleksi
WHILE dan DO-WHILE digunakan untuk operasi perulangan
Deskripsi informal untuk algoritma pada pemrograman komputer
Tujuan: memudahkan manusia untuk membaca bahasa pemrograman konvensional
Tidak ada standar untuk pseudocode karena bukan program yang dapat dieksekusi
Umumnya dimulai dengan kata “BEGIN” dan diakhiri “END”
IF-THEN dan ELSE digunakan untuk operasi percabangan/seleksi
WHILE dan DO-WHILE digunakan untuk operasi perulangan
Contoh pseudocode untuk melakukan panggilan melalui telepon:
BEGIN
Hold Up The Phhone
WHILE not dial
Press dial button
If Connected THEN
WHILE Not Finished
Talking
Hold Down The Phone
END
Contoh pseudocode untuk mengecek apakah bilangan genap atau ganjil:
BEGIN
Number = Input Number
Result = Number % 2
IF Result = 0
THEN Print “The Number Is Even Number”
ELSE
THEN Print “The Number Is Odd Number”
Flowchart ( Diagram Alur ) adalah Representasi skematik dari suatu algoritma atau proses.
Skematik: penggunaan diagram untuk merepresentasikan elemen suatu sistem menggunakan simbol-simbol abstrak yang bukan sesungguhnya.
Contoh: bangunan pada peta disimbolkan dengan titik, gunung disimbolkan dengan segitiga
Algoritma berasal dari nama seorang ahli astronomi dan matematik Persia (Iran), Abu Ja’far Mohammed Ibn Musa al-Khowarizmi, dalam sebuah tulisan Arab berjudul “al jabr w’al-muqabala”
pada tahun 825 M.
Tulisan tersebut diterjemahkan dalam bahasa latin pada abad ke-12 berjudul “Algoritmi de numero Indorum atau Algoritmus on The Numbers of The Indians
Kata “Algoritmi” merujuk pada nama penulisnya, tetapi masyarakat menyalahartikan sebagai “calculation method”.

Senin, 09 Mei 2011

Alabil Bikin Emosi

Social Network ala ABABIL


Oke.. Gue mau nanya nih ke kalian.. kalo tiba2 kalian dapet SMS macem itu, apa yang ada di pikiran kalian?? apalagi nomernya asing.. alias gak ada di kontak kita.. kalo gue sih bakal bayangin tuh orang yang ngirim SMS pasti ngetik SMSnya sambil nyilet2 tangan sendiri dan nyuntik baygon ke lengan.. Oke.. ini sinetron banget..

Masalahnya, kemaren gue dibombardir ama ABABIL yang suka update status lewat SMS gitu.. yap.. gue gak tau mereka kenal Facebook atau enggak, yang jelas hampir tiap hari gue dapet SMS gak jelas yang isinya mirip kayak status update di Facebook/twitter gitu.. Biasanya sih gue cuekin aja.. soalnya gue tau, kalo ampe gue layanin, pasti tuh bocah bakal makin menjadi2.. tapi yang namanya manusia pasti punya titik batas kesabaran.. Meski banyak juga yang bilang, Orang sabar, mangapnya lebar, tapi seperti celana kolor.. gak bisa lah ditarik terus2an.. lama2 pasti kolornya juga bakal putus.. Akhirnya gue semprot aja dia..

Kejadian nista ini berawal tadi siang.. Hape gue bunyi nada SMSnya.. buru2 gue cek deh.. sapa tau itu SMS dari bapak presiden yang ngabarin bahwa Tuna Asmara se-indonesia bakal dapet dana subsidi untuk pacaran.. sehingga para Tuna Asmara bisa nonton di bioskop dengan tarif setengah dari tarif standar.. atau mereka bisa makan Sushi sepuasnya cuma dengan menunjukkan KTTA (Kartu Tanda Tuna Asmara), tapi ternyata enggak.. gue malah dapet SMS ginian :


Yeah.. siang2 bolong.. gue dapet SMS-super-duper-gakpenting-se-asia-tenggara yang isinya tentang luapan emosi sebongkah ABABIL mengenai keluarganya.. yap.. seperti biasa, SMS itu gak gue respon.. lagian misal mau gue LIKE, gimana donk caranya.. ini bukan Facebook! Fine.. gue taroh lagi tuh hape dan gue melanjutkan kerjaan gue sebagai ketua KOMNASGUR (Komisi Nasional Pengangguran).. yaitu main PS..

Tapi gak berapa lama, hape gue bunyi lagi nada deringnya.. dan begitu gue cek.. ada SMS lagi :

Fyuhh.. gue udah ngebayangin aja kehidupan bocah ini lebih tertekan dari si Arumi Bachsin.. mungkin bapaknya selingkuh ama kakaknya, sedangkan ibunya lesbian ama neneknya.. sedangkan dia, hampir tiap hari diancam diperkosa oleh adiknya yang masih TK.. kasian..

Tapi tetep lah gue cuekin.. daripada dia makin getol curhat kalo gue layanin.. lagi2 gue balik ke kegiatan semula.. sebagai pengangguran muda dan berbakat, gue pun beralih aktivitas untuk tidur siang.. Karena biasanya, tiap abis maen PS 1 jam, gue perlu tidur 2 jam untuk memulihkan stamina dan mengembalikan ion tubuh..

Tapi baru aja mata ini mejem, hape gue bunyi lagi.. ya.. seperti yang udah di duga, gue dapet status update terbaru dari ABABIL kita... *jenk! jenk! jenk!*

Oke.. ampe sini kesabaran gue mulai terkikis abis.. soalnya apa??

DIA MULAI PAMER2 KALO DIA KETEMU PACARNYAA!! IYAAA!! PACARNYAAA!! BADAK CAMPING, SAPI BALET!

Sebagai Tuna Asmara stadium labil, emosi gue pun merasa terusik!! iya.. gue sirik.. so, gue balesin aja tuh SMS :


Iya.. gue bales dengan gaya bahasa mirip dia, biar dia bisa ngerti maksud gue.. soalnya kalo bocah udah terbiasa ngetik denganjempol juling (baca : Caps Lock naek turun), pasti susah kalo baca tulisan2 dengan gaya formal.. makanya gue sesuaiin deh gaya tulisan gue..

TAPI APA?? setelah gue semprot gitu, bukannya dia nyadar, dia malah bales gini :


SIAL!!! Emang sebegitu penting kah keluhan2 dia buat gue?? emang dia siapaa?? mending kalo dia ngirimin gue pulsa 20rebu/hari sebagai uang tutup mulut! #JualMahal

Gue makin desperate.. akhirnya gue balesin lagi dengan lebih ketus :

Dengan balasan seperti itu, gue cuma berharap dia nyadar bahwa SMS2 status updatenya itu sangat mengganggu buat gue.. dengan begitu, dia gak bakal SMS2 gak penting lagi..

TAPI APA?? #Season2 Dia malah salah sangka, dan bales gini :

DIA MALAH SOK2AN NGASIH NASEHAT BAHWA HIDUP INI EMANG BERAT, TANPA NYADAR BAHWA HIDUP GUE MENDADAK JADI BERAT GARA2 ULAH DIA! JAMBAN RUBUH! SAPI KAYANG! BADAK FITNES! SAPI BALET!#SumpahGueEmosi

Baca balesan kayak gitu.. gue bener2 putus asa dan ga tau mau bales apa lagi.. yap.. akhirnya gue balesin gini aja :

Oke.. kayaknya gue malah keracunan buat ngeluh2 lewat SMS dengan tulisan lebih parah dari ABABIL.. tapi gak tau kenapa, dengan balesan kayak gitu, dia gak bales2 lagi SMS gue.. mungkin dia mulai nyadar kalo gue lebih labil dari dia.. kalo gue lebih labil dari dia, tentunya dia gak bakal bisa curhat2 ke gue.. soalnya gue gak bakal bisa ngasih jalan keluar apa2, kecuali nyuruh bikin pudding baygon..

P.S : Buat siapapun kamu, yang SMSnya udah gue upload di sini, plis.. sadar lah, bahwa di tahun 2011 ini, ada banyak tempat buat pamer status labil sepuas kamu di internet.. bisa lewat FB, Twitter, atau blog.. plis.. pliss banget jangan gunain SMS buat update status lagi.. karena gue gak ngerti cara UNREG langganan status update kalian.. makasih..