Anda di halaman 1dari 10

KATA PENGANTAR

Puji syukur kehadirat Allah SWT yang telah melimpahkan rahmat, hidayah, serta inayah-Nya kepada penulis, sehingga penulis dapat menyelesaikan Laporan yang berjudul Pengenalan Hardware dengan tepat waktu. Salawat serta salam senantiasa tercurah kepada junjungan kita Nabi Muhammad SAW yang telah membawa kita ke zaman yang terang benderang ini. Laporan ini disusun dan dikembangkan berdasarkan hasil praktikum yang dilakukan di Laboratorium Komputer. Pada kesempatan ini penulis ingin mengucapkan terimakasih kepada semua pihak yang telah membantu dalam proses pembuatan Laporan ini, yang tidak bisa penulis ucapkan satu per satu. Penulis menyadari bahwa Laporan ini masih jauh dari kata sempurna, untuk itu penulis mohon maaf jika dalam penulisan Laporan ini terdapat kesalahan dan kekurangan. Karena tak ada gading yang tak retak. Demi perbaikan di masa yang akan datang, penulis juga meminta kritik dan saran bagi para pembaca.

Cilegon, 20 Maret 2012

Penulis

DAFTAR ISI

HALAMAN JUDUL......... i KATA PENGANTAR ii DAFTAR ISI .. iii BAB I PENDAHULUAN 1.1 Tujuan Percobaan .1 1.2 Teori Dasar ..1 BAB II TUGAS DAN PERTANYAAN 2.1 Tugas Pendahuluan 2.2 Tugas dan Pertanyaan BAB III ANALISA 3.1 Analisa KESIMPULAN DAFTAR PUSTAKA LAMPIRAN LEMBAR PENUGASAN 11 .7 8

iii

BAB I PENDAHULUAN

1.1 Tujuan Percobaan

Praktikan dikenalkan dengan pengenalan Algoritma untuk menentukan suatu pemecahan masalah dengan menggunakan penyelesaiaan seperti Notasi penulisan, notasi flowchart dan notasi pseudocode.

1.2 Teori Dasar Algoritma Ditemukan dan dipopulerkan oleh seorang Ilmuwan Muslim yang bernama Muhammad ibnu Musa Al-Khwarizmi. Beliau adalah ilmuwan besar yang karyakaryanya banyak menjadi dasar perkembangan ilmu modern, antara lain dalam bidang Matematika, Astronomi, Astrologi, Geografi dan banyak cabang ilmu lainnya. Al-khwarizmi kemudian berubah menjadi Algorism, kemudian berubah lagi menjadi Algorithm dalam Bahasa Inggris dan terjemahkan secara bebas kedalam Bahasa Indonesia menjadi Algoritma. Pengertian Algoritma sendiri adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Sedangkan dalam Kamus Besar Bahasa Indonesia (KBBI) terbitan Balai Pustaka (1988); Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah Dari dua definisi tersebut diatas maka kata kuncinya adalah Urutan dan logis, sehingga selain logis Algoritma juga mengharuskan agar langkah langkah tersebut berurutan secara sistematis, agar hasil akhirnya sesuai dengan yang diharapkan. Menurut Donald E.Knuth dalam bukunya yang berjudul The Art of Komputer Programming , Algoritma harus mempunyai lima ciri penting; 1.Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Program yang tidak berhenti berarti mengandung algoritma yang salah. 2.Setiap langkah harus mempunyai langkah yang tepat dan tidak mempunyai tafsiran ganda (Ambigu)

3.Algoritma memiliki masukan nol atau lebih sebelum algoritma itu sendiri bekerja (input) 4.Algoritma memiliki keluaran nol atau lebih sebagai output yang berhubungan dengan input. Dan keluaran tersebut harus benar adanya, artinya harus sesuai dengan yang kita harapkan. 5.Algoritma harus efektif, artinya setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal. Algoritma dapat diekspresikan melalui tiga cara, yakni;

1.Structured Indonesian (SI) , yakni penulisan urutan langkah yang dilakukan oleh programmer sesuai dengan bahasa sehari-hari (dalam hal ini Bahasa Indonesia). Sebagai contoh, Algoritma untuk mencari luas segi tiga dalam Structured Indonesian adalah; 1.Mulai 2.Baca data Alas dan tinggi 3.Periksa apakah Alas dan tinggi mempunyai nilai lebih besar dari 0 (nol).Jika ya, maka lanjutkan ke langkah ke 4, jika tidak maka berhenti. 4.Luas adalah Alas kali Tinggi kali 0,5. 5.Tampilkan luas.

2. Pseudocode , adalah penulisan algoritma yang menyerupai kode program. Pseudo sendiri berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjuk pada kode program. Pseudocode didasarkan kepada bahasa pemrograman yang sesungguhnya seperti BASIC, PASCAL atau FORTRAN. Penulisan Pseudocode masih tetap bersifat umum, artinya boleh ditulis dengan menyerupai bahasa pemrograman tersebut. Latar belakang programmer sangat berpengaruh dalam menuliskan pseudocode. Programer yang familiar dengan Bahasa BASIC akan lebih mudah dan senang menuliskan pseudocode dalam Bahasa BASIC, begitu juga yang berpengalaman dengan Bahasa Pascal tentunya akan lebih memudahkan jika pseudocode-nya mirip bahasa Pascal. Pendekatan yang terbaik

disesuaikan kepada kemampuan siswa dan Pemrograman apa yang akan dipelajari oleh Siswa itu sendiri. Berikut ini contoh Pseudocode algoritma menghitung Luas Segitiga; 1.START 2.READ alas, tinggi 3.IF alas < 0 or tinggi < 0 GOTO 6 4.luas = alas * tinggi * 0,5 5.PRINT luas 6.END

Algoritma diatas sangat mirip dengan bahasa BASIC dan yang satu rumpun dengan Bahasa BASIC ( Penulis menggunakan Liberty Basic, Gold License). Dengan adanya pseudocode akan memudahkan proses penterjemahan kedalam bahasa pemrograman.

3.Flow Chart, adalah bagan alir yang menggambarkan urutan langkah/aliran program secara logika. Flow Chart banyak dipakai untuk menggambarkan algoritma dengan bantuan symbol symbol tertentu yang telah disepakati secara internasional. Dengan adanya symbol/lambang lambang tersebut dan ditambah notasi penjelasannya, maka logika pemrograman dapat dimengerti dengan mudah. Bagi yang sudah familiar dengan Microsoft Word, symbol-symbol Flow Chart dapat di tampilkan dengan langkah Insert-Shapes-Flowchart yang akan menampilkan lambang sebagai berikut;

Lambang-lambang tersebut mempunyai makna/menggambarkan proses dan atau peripheral tertentu dalam pembuatan algoritma dengan Diagram Alir /Flow Chart.

Dari ketiga cara penulisan Algoritma (SI, Psedocode dan Flowchart) kesemuanya itu bersifat independent terhadap semua bahasa pemrograman, artinya Algoritma yang kita buat dapat dipakai oleh setiap bahasa Pemrograman. Hanya mungkin saja dari cara penulisan pada program komputernya (syntax) yang sedikit berbeda dan keyword (kata kunci) untuk melakukan perintah. Penulisan Print dalam Bahasa BASIC , jika dalam Bahasa PASCAL diekspresikan dengan Write atau Writeln. Algoritma dapat diibaratkan Resep Masakan yang ditulis dalam berbagai bahasa, dan orang akan bisa membuatnya selama orang tersebut memahami bahasa yang dipakai untuk menulis resep masakan tersebut.

Struktur Algoritma Struktur dasar algoritma terbentuk dari tiga struktur dasar, yakni struktur berurutan, struktur percabangan/pemilihan/keputusan dan struktur pengulangan. Dalam bahasa pemrograman ketiga dasar pembentuk sebuah algoritma tersebut dikenal dengan sequencing, branching dan looping. Pada dasarnya hampir semua algoritma merupakan gabungan dari struktur tersebut. Algoritma Berurutan (Sequencing) Struktur berurutan ini dapat dianalogikan dengan kita berjalan lurus atau kendaraan yang meluncur dijalan yang lurus. Langkah demi langkah atau kilometer demi kilometer kita harus melaluinya sehingga tahapan demi tahapan harus dilalui sesuai dengan urutannya. Dapat juga kita analogikan dengan mencatat mata pelajaran, kata demi kata dan kalimat demi kalimat kita menyalinnya secara berurutan sampai selesai. Struktur berurutan bisa terdiri dari satu dan atau beberapa instruksi. Intruksi intruksi tersebut akan dieksekusi oleh komputer sesuai dengan urutannya. Oleh sebab itu maka pentingnya sistematika yang tepat dan benar agar algoritma tersebut menghasilkan outputyang kita harapkan. Menurut Goldshlager dan A. Lister, struktur berurutan mengikuti ketentuan sebagai berikut; Tiap instruksi dikerjakan satu demi satu. Tiap instruksi hanya dilakukan/dilaksanakan tepat satu kali, tidak ada pengulangan Urutan pelaksanaan yang dilakukan oleh komputer(pemroses) sama dengan urutan yang ditulis dalam algoritmanya. Akhir dari instruksi terakhir, merupakan akhir algoritma. Algoritma Pencabangan (Branching) Pada dasarnya pemrograman komputer adalah untuk keperluan manusia dalam memenuhi kebutuhan dan keinginan hidupnya. Oleh sebab itu pemrograman komputer identik dengan penyelesaian pekerjaan manuasia keseharian. Kehidupan kita tidak selamanya berjalan lurus, terkadang harus melakukan pilihan dari beberapa keadaan, atau melakukan pengujian kepada suatu kondisi agar kita dapat mengambil keputusan tentang jalan/arah mana yang akan diambil. Dalam pemrograman kondisi seperti ini lajimnya disebut pencabangan/branching. Dalam kondisi tertentu mungkin kita melakukan lompatan atau melewatkan beberapa

instruksi, dan program akan berjalan sesuai dengan kehendak kita jika kondisi memenuhi syarat yang kita tetapkan. Algoritma Pengulangan (Looping) Sebuah kendaraan sedang mengisi bahan bakar di sebuah Statsiun Pengisian Bahan Bakar Umum (SPBU). Sang Sopir meminta agar agar kendaraannya diisi bahan bakar sebanyak 100 liter. Petugas mengisikan bahan bakar kedalam tangki kendaraan tidak sekaligus 100 liter, melainkan bertahap sesuai kapasitas aliran selang pengisian bahan bakar. Dia akan melakukan pengisian secara terus menerus sampai indikator menunjukkan angka 100. Dan akan berhenti jika telah terpenuhi kondisi sesuai permintaan sang sopir. Seorang anak sedang menimba air dari sebuah sumur untuk mengisi ember /jerigen air yang dibawanya dari rumah. Dia akan terus menimba sampai volume air yang ada di ember tersebut penuh atau sesuai dengan kemampuan angkatnya. Dari dua ilustrasi tersebut dapat kita simak, bahwa pengulangan akan terus terjadi sampai dengan sebuah kondisi yang kita inginkan tercapai, dan pengulangan akan berakhir manakala kondisi yang kita harapkan sudah tercapai. Dalam pembuatan program komputer, kita kadang-kadang harus mengulang satu atau beberapa perintah agar memperoleh hasil sesuai dengan yang kita inginkan. Salah satu kelebihan komputer adalah mampu melakukan pengulangan sebanyak yang kita inginkan tanpa merasa lelah dan bosan <walaupun sebenarnya terbatas juga>. Dalam contoh kedua, bisa saja anak tersebut berhenti menimba air bukan karena embernya sudah penuh, melainkan kecapaian. Tidak demikian halnya dengan computer, dia akan terus melakukan/mengeksekusi perintah sampai dengan selesai. Struktur pengulangan terdiri dari 2 bagian; 1.Kondisi Pengulangan, yaitu syarat yang harus dipenuhi untuk melaksanakan pengulangan. Syarat ini biasanyanya dinyatakan dalam ekspresi Boolean yang harus diuji apakah mempunyai nilai true (benar) atau false (salah). 2.Badan penglangan (loop body),yakni satu atau sekumpulan perintah yang harus diulang. Dalam pengulangan biasanya ada yang dikenal dengan inisialisasi dan terminasi. Inisialisasi adalah memberikan nilai awal pada sebuah variabel (Counter SPBU di reset 0), sedangkan terminasi adalah nilai akhir sebagai tanda berakhirnya pengulangan . Ada beberapa pernyataan yang dapat dilakukan untuk menyelesaikan pengulangan ini. Pada pelaksanaannya pemakaian struktur pengulangan tergantung dari masalah yang harus diselesaikan, dukungan bahasa pemrograman dan tehnik pendekatan dari programmer computer itu sendiri.

Seperti halnya juga dalam pencabangan, bentuk satu pengulangan dapat saja menyelesaikan beberapa kasus yang berbeda. Namun ada juga bentuk pengulangan yang hanya cocok untuk kasus tertentu saja. Pemilihan bentuk pengulangan yang tepat, dapat meningkatkan kinerja dan efisiensi sebuah program computer.

http://www.docstoc.com/docs/10230965/ALGORITMA http://www.duniaceria.in/read/1677/contoh.flowchart,.pseudocode,.dan.beberapa.algo ritma.C++.sederhana#.T2q7sNUkyTY http://www.anneahira.com/sejarah-algoritma.htm

Anda mungkin juga menyukai