Assalamualikum Wr.Wb
Pada Artikel ini saya akan menjelaskan apa itu Algoritma dan Pemrograman.



Algoritma Dan Pemrograman

1.Definisi Algoritma
    Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.  Masalah dapat berupa apa saja, dengan catatan untuk setiap masalah, ada syarat kondisi awal yang harus dipenuhi sebelum menjalankan algoritma.  Konsep algoritma sering kali disetarakan dengan sebuah resep.  Sebuah resep biasanya memiliki daftar bahan atau bumbu yang akan digunakan, urutan pengerjaan dan bagaimana hasil dari urutan pengerjaan tersebut.  Apabila bahan yang digunakan tidak tertera (tidak tersedia) maka resep tersebut tidak akan dapat dikerjakan.  Demikian juga jika urutan pengerjaannya tidak beraturan, maka hasil yang diharapkan tidak akan dapat diperoleh.  
Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan syarat yang sama.  Tingkat kerumitan dari suatu algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah.  Umumnya, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi.

✔  Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.
✔ Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah.
✔ Algoritma adalah urutan langkah-langkah berhingga untuk memecahkan masalah logika atau matematika.
✔ Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang digunakan  untuk memecahkan suatu       permasalahan.

Menurut Donald E. Knuth dalam bukunya yang berjudul The Art of Computer Programming, algoritma harus mempunyai lima ciri penting :
1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas (berhingga)
2. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (ambiguous)
3. Algoritma memiliki nol atau lebih masukan (input)
4. Algoritma mempunya nol atau lebih keluaran (output)
5. Algoritma harus efektif an efisien. 
    Bab1. Algoritma Percabangan
    • Algoritma Percabangan dengan 1 Kondisi
    • Algoritma Percabangan dengan 2 Kondisi
    • Algoritma Percabangan lebih dari 2 Kondisi
    • Kegiatan Belajar 5 Algoritma Percabangan Tersarang
    Ba2. Algoritma Perulangan
    • Perulangan dengan Kondisi Awal
    • Perulangan dengan Kondisi Akhir
    • Perulangan dengan Kondisi akhir diinputkan user
    • Perulangan dengan menggunakan pencacah naik
    • perulangan dengan menggunakan pencacah turu
    • Pengenalan Variabel
    • Pengenalan Operator
    • Penyajian Algoritma dan pseudocode
    • Penyajian Algoritma dengan Flowchart
    • Penggunaan tool pembuatan
    • Algoritma menggunakan bahasa Natural
    • Flowchart
    2. Cara Penulisan Algoritma
      Ada tiga cara penulisan algoritma, yaitu :
    a. Structured English (SE)SE merupakan alat yang cukup baik untuk menggambarkan suatu algoritma. Dasar dari SE adalah Bahasa Inggris, namun kita dapat memodifikasi dengan Bahasa Indonesia sehingga kita boleh menyebutnya sebagai Structured Indonesian (SI). Algoritma seperti pada Contoh 5.10 dan 5.11 merupakan algoritma yang ditulis menggunakan SI. Karena dasarnya adalah bahasa sehari-hari, maka SE atau SI lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasikan kepada pemakai perangkat lunak.

    b. Pseudocode
    Pseudocode mirip dengan SE.  Karena kemiripan ini kadang-kadang SE dan Pseudocode dianggap sama.  Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan  code menunjuk pada kode program.  Sehingga pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya.   Pseudocode didasarkan pada bahasa pemrograman yang sesungguhnya seperti BASIC, FORTRAN atau PASCAL. Pseudocode yang berbasis bahasa PASCAL merupakan  pseudocode yang sering digunakan Kadang-kadang orang menyebut pseudocode sebagai PASCAL-LIKE algoritma Apabila Contoh 5.10 ditulis dalam pseudocode berbasis bahasa BASIC akan tampak seperti pada contoh 5.12.
    Contoh 5.12.  Pseudocode.
    1. Start
    2. READ alas, tinggi
    3. Luas = 0.5 * alas * tinggi
    4. PRINT Luas
    5. Stop
    Pada Contoh 5.12 tampak bahwa algoritma sudah sangat mirip dengan bahasa BASIC.  Pernyataan seperti READ dan PRINT merupakan keyword yang ada pada bahasa BASIC yang masing-masing menggantikan kata “baca data” dan “tampilkan”. Dengan menggunakan pseudocode seperti di atas maka proses penterjemahan dari algoritma ke kode program menjadi lebih mudah.

    c. Flowchart
    Flowchart atau bagan alir adalah skema/bagan (chart) yang menunjukkan aliran (flow) di dalam suatu program secara logika.  Flowchart merupakan alat yang banyak digunakan untuk menggambarkan algoritma dalam bentu notasi-notasi tertentu.  Secara lebih detil bagian ini akan dibahas pada bagian berikutnya.
     PROGRAM
    Program adalah perwujudan atau implementasi logis algoritma yang ditulis menggunkan bahasa program tertentu, sehingga dapat dilaksanakan oleh komputer.
    Belajar memprogram adalah belajar tentang strategi pemecahan masalah, metodologi dan sistematika pemecahan masalah tersebut kemudian menuangkannya dalam suatu notasi yang disepakati bersama. 
    1)Piranti masukan (Output)
    2)Piranti keluaran (Input)
    3)Pemerosesan
    4)Penyimpanan

    Interprier dan Comprier
    Pengertian Compiler
    Compiler adalah suatu program yang menerjemahkan bahasa program ( source code) kedalam bahasa objek (obyek code). Compiler menggabungkan keseluruhan bahasa program, mengumpulkannya dan kemudian menyusunnya kembali. Komplier memerlukan waktu untuk membuat suatu program dapat di eksekusi oleh computer, program yang dieksekusi oleh compiler adalah dapat berjalan lebih cepat disbanding program yang diperoduksi oleh interpreter, disamping itu juga bersifat independen. Contoh program yang menggunakan compiler adalah Visual Basic, Visual Delvi, dan Pascal.
    Tahap Kompilasi:

    1. Pertama source code (program yang ditulis) dibaca kememori computer).
    2. Source code tersebut diubah menjadi objek code (bahasa Assembly).
    3. Objek code di hubungkan dengan liberary yang dibutuhkan untuk membentuk file yang bisa dieksekusi.
    Pengertian Interpreter

    Interpreter adalah Perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut.

    Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi.

    Interpreter atau dalam bahasa Indonesia dikenal sebagai Juru Bahasa berbeda dengan Translator atau penterjemah dalam segi media yang dipakai untuk menerjemahkan. Interpreter akan menterjemahkan bahasa sumber ke dalam bahasa sasaran secara langsung atau orally sementara translator akan menerjemahkan bahasa sumber ke bahasa sasaran secara tertulis.

    Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda.
    Perbedaan Compiler dan Interpreter secara keseluruhan:
    Jika lebih lanjut, maka perbedaan antara compiler dan interpreter secara keseluruhan adalah sebagai berikut ini:
    1. Pada compiler, jika hendak menjalankan program hasil kompilasi dapat dilakukan tanpa butuh kode sumber karena telah menghasilkan .exe, sedangkan kalau interpreter butuh kode sumber.
    2. Jika pada compiler, pembuatan kode bisa dijalankan mesih dilakukan dalam 2 tahap terpisah, yaitu parsing (pembuatan kode objek) dan linking (pengabungan kdoe objek dengan library), sedangkan dalam interpreter tidak ada proses terpisah.
    3. Compiler membutuhkan linker unuk mengabungkan kode objek dngan berbagai macam library demi menghasilkan suatau kode yang bisa dijalankan oleh mesin, sedangkan interpreter tidak butuk linker untuk mengabungkan kode objek dengan berbagai macam library.
    4. Interpreter cocok digunakan untuk membuat//menguji coba modul (sub-routine / program – program kecil) tetapi dalam compiler agak susah melakukannya kaerna untuk mengubah suatu modul / kode objek kecil, maka harus dilakukan proses linkiing / penggabungan kembali semua objek dengan library yang diperlukan.
    5. Pada compiler bisa dilakukan optimasi / peningkatan kualitas kodde yang bisa dijalankan.
    Tujuan optimasi itu sendiri adalah agar lebih cepat, supaya ukuran lebih kecil dan keperluan untuk sistem dengan banyak processor, sedangkan interpreter susah atau bahkan tidak bisa dioptimasi.

    Bahasa Pemrograman yang mengunakan Compiler dan Interpreter
    1. Menggunakan Compiler:
    - Visual Basic (VB)
    - Fortran
    - Cobol
    - Pascal
    - C family (C, C++, C#)
    2. Menggunakan Interpreter:
    - PHP
    - ASP
    - Perl
    - Phyton
    Wassalamualaikum Wr.Wb

    Leave a Reply

    Subscribe to Posts | Subscribe to Comments

    - Copyright © Mila Agustiana - Blogger Templates - Powered by Blogger - Designed by Johanes Djogan -