Laman

Minggu, 15 Maret 2015

Algoritma dan Pemrograman 1 (*), Farhah, 12110612, 1KA31 (BAB 1)

Kode Mata Kuliah : IT011302
PTA 2010/2011

Bab 1
Pendahuluan


Konsep Dasar Pemrograman

Program merupakan himpunan atau kumpulan instruksi yang dibuat oleh programmer atau suatu executable dari suatu software. 

Pemrograman adalah suatu kumpulan urutan perintah ke komputer untuk mengerjakan sesuatu, dimana instruksi tersebut menggunakan bahasa yang dimengerti oleh komputer atau yang dikenal dengan bahasa pemrograman. 

Bahasa Pemrograman merupakan prosedur atau tata cara penulisan program. 

Tiga faktor penting dalam tata cara penulisan program, yaitu :
1) Sintaks : aturan gramatikal atau komposisi suatu program yang mengatur tata cara penulisan huruf
                    angka dan karakter lain.
    Contoh : pada pembuatan program Pascal antara dua statement dipisahkan oleh titik koma (;)
                    X := 1 ; X :=  X + 1; (bentuk aturan penulisan program)
   
2) Semantik : mendefinisikan arti dari program yang benar secara sintaks dari bahasa pemrograman.
    Contoh : pada pembuatan program bahasa C
                   Int vector [10]
    Arti semantiknya : akan menyebabkan ruang sebanyak 10 elemen integer diberikan kepada
                                   variabel bernama vector ( 0 - 9 untuk array dalam C).

3) Pragmantis : memperhatikan tentang pemakaian bahasa, area aplikasi, kemudahan implementasi
                           dan penggunaan, dan sukses bahasa didalam desain pelaksanaan tujuannya.
                           Kekuatan yang membentuk suatu bahasa pemrograman meliputi arsitektur komputer
                           dan praktek rancang bangun perangkat lunak (terutama daur hidup perangkat lunak)
                           model komputasional, dan daerah aplikasi.
     Contoh : Alat penghubung pemakai, sistem pemrograman, dan sistem ahli.

Fungsi Bahasa Pemrograman  adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara programmer dengan komputer. 

4 kelompok Bahasa Pemrograman, yaitu :
1. Object Oriented Language (contoh : Visual Basic, Visual dBase, Visual FoxPro, Delphi, Visual C)
2. High Level Language (contoh : Pascal dan Basic)
3. Middle Level Language (contoh : Bahasa C, Cobol, Fortran),
4. Low Level Language (contoh : Bahasa Assembly).

Tipe Pemrograman ada 6 macam, yaitu :
1. Pemrograman Prosedural
    Algoritma berisi urutan langkah-langkah penyelesaian masalah. 
    Definisi Prosedural adalah :
    a. Tahap-tahap kegiatan untuk menyelesaikan suatu aktifitas.
    b. Metode langkah demi langkah secara eksak dalam memecahkan suatu masalah.

2. Pemrograman Terstruktur
    adalah bahasa pemrograman yang mendukung pembuatan program sebagai kumpulan prosedur. 
    - Prosedur ini dapat saling memanggil dan dipanggil dari manapun dalam program. 
    - Dapat menggunakan parameter yang berbeda-beda untuk setiap pemanggilan. 
    - Bahasa pemrograman terstruktur adalah pemrograman yang mendukung abstraksi data.

3. Pemrograman  Modular
    Diterapkan dengan menggunakan sub-routine (sebuah kumpulan perintah yang melakukan tugas
    pemrosesan yang terbatas. Pemrograman ini banyak dimanfaatkan oleh Bahasa Pemrograman 
    berbasis objek. 
    
4. Pemrograman Fungsional
    Karena memang pada program seluruh kodenya berupa fungsi-fungsi. Bahasa Pemrograman
    Fungsional merupakan salah satu bahasa pemrograman yang memperlakukan proses komputasi
    sebagai evaluasi fungsi-fungsi matematika.
    Contoh : Lisp, Scheme, ML, Haskell.

5. Pemrograman Berorientasi Objek
    Objek : Elemen yang memiliki fungsi, metode, karakteristik tertentu yang dapat dibedakan dalam
                 dunia nyata.
    Class  : Kumpulan objek-objek yang memiliki kesamaan karakteristik.
    Contoh : C++, SmallTalks, Java

6. Pemrograman Visual 
    Penggunaan ekspresi visual (grafik, gambar, atau ikon) dalam proses pemrograman, mengacu pada
    aktifitas yang memungkinkan pengguna untuk membuat program dalam dua (atau lebih) dimensi.

Tahap Pengembangan Program
1. Batasan Masalah
2. Pengembangan Model
3. Rancangan Algoritma (berupa pemrograman, pengujian pembetulan algoritma, dokumentasi)
4. Perbaikan Algoritma

Data merupakan bahan mentah yang akan diolah menjadi informasi sehingga dapat digunakan oleh user atau pemakai.

Tipe Data :
1. Tipe Data Dasar : tipe data primitif yang tidak terstruktur yang didefinisikan oleh bahasa
                                    pemrograman.
    Terbagi menjadi lima bagian, yaitu :
    1) Tipe Data Numerik : untuk menyimpan data berupa angka.
         - Integer     :  bilangan bulat positif dan negatif.
         - Real          :  bilangan desimal atau mantissa
         - Subrange :  subtype dari tipe data integer dan terdiri dari urutan nilai-nilai integer dalam
                                range yang terbatas.
         - Fixed-point real : bilangan ini direpresentasikan dengan urutan digit yang mempunyai
                                          panjang tetap dengan titik desimal diposisikan di tempat yang diberikan
                                          antara dua digit.

    2) Tipe Data Enumerasi : suatu urutan list dari nilai-nilai yang berbeda.
    3) Tipe Data Boolean : tipe data untuk merepresentasikan True atau False. (Kondisi)
    4) Tipe Data Character : berupa sebuah karakter yang terletak diantara tanda petik tunggal atau
                                               ganda (' atau ") tergantung dari bahasa pemrograman yang digunakan.
    5) Tipe Data String : Urutan-urutan dari karakter berupa sebuah karakter yang terletak diantara
                                         tanda petik tunggal atau ganda (' atau ") tergantung dari bahasa
                                         pemrograman yang digunakan.
    6) Tipe Data Internationalization : disebut I 18N.

2. Tipe Data Terstruktur : tipe data campuran dari berbagai tipe data dasar.
    Terbagi menjadi lima bagian, yaitu :
    1). Array : Tipe terstruktur yang mempunyai komponen dalam jumlah tetap dan setiap komponen
                       mempunyai tipe data yang sama.
    2) Record : Kumpulan data yang setiap komponennya mempunyai tipe data yang berbeda dengan
                        komponen yang lainnya.
    3) String : Sebuah deretan simbol yang digunakan untuk menyimpan barisan karakter.
    4) List : Kumpulan data yang dibatasi dengan koma dan diapit dengan tanda "[]".
    5) File/ Berkas : Kumpulan sejumlah komponen yang bertipe sama namun tidak tertentu dan
                                biasanya tersimpan dalam suatu media penyimpanan luar.

 3. Tipe Data Didefinisikan oleh Pemakai : tipe data ini biasanya disebut enumerasi.
     Enumerasi : Semua nilai yang ada lalu disebutkan dnegan cara satu persatu.

4. Tipe Data Penunjuk
     Pointer :  tipe data yang berisikan memori dimana data disimpan dengan menggunakan media
                      penyimpanan luar.

Model Komputasi : Kumpulan dari nilai dan operasi.
terbagi menjadi tiga bagian, yaitu :
1) Model Fungsional : terdiri dari satu set nilai-nilai, fungsi-fungsi dan operasi aplikasi fungsi
                                       dan komposisi fungsi.
2) Model Logika : terdiri dari satu set nilai-nilai, definisi hubungan dan kesimpulan logis.
3) Model Imperatif : terdiri dari satu set nilai-nilai yang mencakup suatu keadaan operasi tugas
                                    untuk memodifikasi pernyataan.

Prinsip Desain Bahasa Pemrograman
1. Prinsip Kesederhanaan : bahasa harus didasarkan atas yang paling sedikit.
2. Prinsip Orthogonal : fungsi mandiri harus dikendalikan oleh mekanisme mandiri.
3. Prinsip Keteraturan : keteraturan dalam bahasa.
4) Prinsip Sifat Ekstensibilitas (dapat diperpanjang) :  konsep dasar bahasa harus diterapkan
                                                                                              secara konsisten dan bersifat universal.
5) Prinsip  Clarity, Simplicity, dan Unity : kemudahan, kesederhanaan, dan kesatuan merupakan
                                                                         suatu kombinasi yang membantu programmer ikut
                                                                         mengembangkan suatu algoritma sehingga hasilnya
                                                                         mempunyai kompleksitas yang rendah.
6) Orthogonality : menunjukkan kepada suatu atribut yang dapat dikombinasikan dengan beragam
                                fitur bahasa pemrograman sehingga kombinasinya mempunyai arti yang dapat
                                digunakan.
7) Kewajaran untuk Aplikasi : bahasa pemrograman membutuhkan sintaks yang cocok/ tepat yang
                                                     digunakan pada struktur program untuk merefleksikan struktur
                                                     logika yang melandasi suatu algoritma.
8) Mendukung Abstraksi : abstraksi merupakan suatu hal yang substansial bagi programmer untuk
                                              membuat suatu solusi dari masalah yang dihadapi.
9) Kemudahan untuk verifikasi program : merupakan hal penting bagi sebuah program karena
                                                                         dengan verifikasi yang mudah maka satu program akan
                                                                         dengan mudah dibangun dan dikembangkan.
10) Lingkungan Pemrograman : lingkungan yang baik akan memudahkan programmer untuk
                                                        mengimplementasikan abstraksi yang sudah disusunnya.
11) Portabilitas Program : kemudahan program yang sudah jadi untuk dipindah-pindahkan dari
                                              komputer yang digunakan untuk membuat dan mengembangkan ke
                                              komputer lain yang akan menggunakannya.
12) Biaya Penggunaan :  elemen penting dalam mengevaluasi suatu bahasa pemrograman.
       Ada beberapa biaya yang dapat diukur yaitu :
       1. Biaya Eksekusi Program
       2. Biaya Translasi/ Kompilasi Program
       3. Biaya Penciptaan, Testing dan Penggunaan Program
       4. Biaya Pemeliharaan Program


Tidak ada komentar:

Posting Komentar