Minggu, 10 Juli 2011

Rangkuman PTI ke-8

Dasar Pemograman


BAHASA PEMROGRAMAN
x. Bahasa (language)
Adalah suatu sistim untuk berkomunikasi. Bahasa tertulis menggunakan simbol (yaitu
huruf) untuk membentuk kata. Dalam ilmu komputer,bahasa manusia disebut bahasa
alamiah (natural languages), dimana komputer tidak bisa memahaminya, sehingga
diperlukan suatu bahasa komputer.
x. Bahasa pemrograman (programming language)
Program merupakan sekumpulan instruksi yang merupakan penyelesaian masalah.
Program ‘dimasukkan’ kedalam komputer, komputer mengerjakan instruksi-instruksi di dalam program tersebut, lalu memberikan hasil atau keluaran yang diinginkan. Agar program dapat dilaksanakan oleh komputer, program tersebut harus ditulis
dalam suatu bahasa yang dimengerti oleh komputer. Karena komputer adalah mesin maka
program harus ditulis dalam bahasa yang khusus dibuat untuk berkomunikasi dengan
komputer. Bahasa komputer yang digunakan dalam menulis program dinamakan bahasa
pemrograman. Jadi bahasa pemrograman yaitu kumpulan perintah-perintah bermakna, berstruktur tertentu (syntax) yang dapat dimengerti komputer yang berguna didalam penyelesaian masalah.

Dalam pengertian luas pemrograman meliputi seluruh kegiatan yang tercakup dalam :
- Pembuatan program, termasuk analisis kebutuhan (requirement's analysis)
- Keseluruhan tahapan dalam perencanaan (planning) , perancangan (design) dan
pewujudannya (implementation).

Dalam pengertian yang lebih sempit, pemrograman merupakan :
- Pengkodean (coding atau program writing = penulisan program)
- Pengujiannya (testing) berdasarkan rancangan tertentu.

Pemahaman yang lebih sempit ini sering digunakan dalam pembuatan program-
program terapan komersial yang membedakan antara system analyst yang bertanggung
jawab dalam menganalisa kebutuhan, perencanaan dan perancangan program dengan
pemrogram (programmer) yang bertugas membuat kode program dan menguji kebenaran
program.

GENERASI BAHASA PEMROGRAMAN

Generasi Pertama : BAHASA MESIN
Bahasa mesin adalah bahasa internal komputer yang mengeksekusi secara langsung tanpa terjemahan (translation).Disebut generasi pertama karena merupakan jenis yang paling awal dikembangkan:
tahun 1940-an dan awal 1950-an semua program harus dikodekan dalam bahasa mesin
Pemrograman dalam bahasa mesin :
- Akan menyita waktu dan kondusif untuk membuat kesalahan
- Berbeda untuk setiap jenis komputer, sehingga bergantung pada komputer dan
tidak standar
Semua program harus ada dalam bahasa mesin agar dapat dieksekusi, sehingga
bahasa lain yang ditulis programer perlu diterjemahkan oleh komputer ke bahasa mesin untuk eksekusi.

Generasi Kedua : BAHASA ASSEMBLY
Penggunaan komputer secara komersial tahun 1950-an mengakibatkan dikembangkannya bahasa assembly
Ciri-Ciri bahasa assembly :
- Kode ditandai dengan nama yang mudah diingat seperti ADD, SUB, dan MULT
- Alamat penyimpanan (storage addresses) nyata di mana data ditempatkan dapat
didefinisikan dengan nama-nama seperti AMT1 dan AMT2 untuk memudahkan
rujukan

Bahasa assembly sangat menyerupai bahasa mesin, sehingga untuk menjadi
programmer bahasa assembly yang cakap kita harus memahami arsitektur mesin, yakni
bagaimana mesin itu secara fisik memproses data.
Sama seperti bahasa mesin, bahasa assembly tergantung komputer (tidak portable).
Untuk menerjemahkan kode-kode diperlukan program khusus yang disebut ASSEMBLER.
Bahasa assembly masih digunakan karena begitu mirip dengan bahasa mesin dengan kode
yang sangat efisien Untuk membuat system software lebih disukai menggunakan bahasa
assembly karena sangat efisiean dalam penggunaan komputer (butuh memori yang kecil)

Generasi Ketiga : Bahasa Tingkat Tinggi
Penggunaan komputer dalam bisnis berkembang sangat dramatis pada tahun 1950-
an. Bahasa mesin dan assembly terlalu sulit, sehingga muncul third-generation languages
(3GLs) yang lebih mudah untuk program dan portable.
Disebut tingkat tinggi karena mudah dipelajari & program tingkat-tinggi memerlukan
proses penerjemahan oleh komputer yang sangat rumit yang disebut COMPILER atau
INTERPRETER
Seperti generasi pendahulunya 1GL dan 2GL, 3GL disebut bahasa prosedural (4GL
dan 5GL disebut bahasa nonprosedural), yakni program harus menentukan kumpulan
instruksi yang tepat yang dibutuhkan untuk menyelesaikan tugas yang diberikan
Contoh bahasa tingkat-tinggi :
- FORTRAN (FORmula TRANslator)
- Cobol
- Pascal
- BASIC
- MODULA-2
- ADA
- Object-oriented programming language

Bahasa C disebut bahasa “tingkat-menengah” karena format instruksinya dengan
bahasa tingkat-tinggi sekaligus bisa berinteraksi langsung dengan hardware

Generasi Keempat Bahasa Deklaratif
• Bahasa pemrograman ini jauh lebih mudah ditulis karena instruksinya sudah sangat mendekati bahasa percakapan sehari-hari

Ciri-ciri :
- Mudah untuk dipelajari dan dipahami
- Tepat untuk pengaksesan database
- Memfokuskan pada memaksimalkan produktivitas manusia dari pada minimisasi
waktu computer
- Nonprosedural
- Tersedia dalam software paket yang dapat digunakan untuk mengembangkan
aplikasi yang diinginkan
Contoh:
- Query language seperti SQL (structured query language), QBE (query-by-example)
dan INTELLECT
- Report generator
Generasi Kelima
Sering digunakan untuk akses database atau membuat sistem pakar (expert system)
atau knowledge-based system
Dalam konsep, ditujukan untuk bahasa alami (natural languages) yang semirip
mungkin dengan hubungan kemanusiaan
Contoh : LISP dan Prolog
Sekarang ini banyak sistem pakar dikodekan baik dalam LISP maupun Prolog, meski
untuk hal yang sama bisa ditulis dalam C atau C++. Usaha yang sekarang dilakukan adalah
memperbaiki bahasa AI (artificial intellegence) dengan mengkombinasikan kemampuan
terbaik dari LISP dan Prolog.

Generasi V : Object-Oriented Language
• Bahasa disebut "murni" OO bahasa, karena segala sesuatu di dalamnya diperlakukan secara konsisten sebagai sebuah objek, dari primitif seperti karakter dan tanda baca, sepanjang jalan sampai ke seluruh kelas, prototip, blok, modul, dan lain-lain dan dirancang secara khusus untuk memfasilitasi, bahkan menegakkan metode OO. Contoh: Simula
• Simula (1967) secara umum diterima sebagai bahasa pertama untuk memiliki fitur-fitur utama dari sebuah bahasa berorientasi objek. Hal ini diciptakan untuk membuat program simulasi, dimana apa yang kemudian disebut objek adalah representasi informasi yang paling penting

Perbandingan antar Level Bahasa Pemrograman
contoh: perintah menuliskan huruf ‘A’ di layar komputer


LANGKAH PEMROGRAMAN
A. MENDEFINISIKAN
Harus mengerti dengan baik mengenai permasalahan apa yang ingin diselesaikan, seperti:
1. Bagaimana hubungan antara data input dengan hasil pengolahannya
2. Bagaimana data input dengan pengolahannya
3. Bagaimana hubungan antara output dengan pengolahannya
4. Bagaimana struktur pengolahannya

CONTOH : Misalkan ingin menghitung luas segitiga :
1. Bahwa untuk mendapatkan luas segitiga (hasil pengolahan) harus diketahui alas dan tinggi segitiga tersebut (data input)
2. Bahwa untuk mengolah luas segitiga dengan formula 0,5 * alas * tinggi (pengolahan), input yang dibutuhkan adalah alas dan tinggi
3. Hasil dari pengolahan 0,5 * alas * tinggi didapat luas segitiga
4. Struktur pengolahannya yaitu data input:
• Masukkan alasnya
• Masukkan tingginya
• Proses dengan formula 0,5 * alas * tinggi
• Didapat luas segitiga dari hasil pengolahan diatas


B. MENGIMPLEMENTASIKAN
Implementasi telah mulai melibatkan bahasa pemrograman yang ingin digunakan Di dalam mengimplementasi, Algoritma akan menentukan bahasa pemrograman apa yang cocok atau ingin digunakan Algoritma adalah urutan langkah-langkah yang dapat
digunakan untuk memecahkan masalah. Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibnu Musa al-Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules of restoration and reduction) sekitar tahun 825 M

Kata Algoritma diambil dari nama ilmuwan muslim Abu Ja’far Muhammad bin Musa Al-Khwarizmi (780-846 M) yang banyak menghasilkan karya dalam bidang matematika, disamping karya-karyanya dalam bidang lainnya seperti geografi dan musik.

Algorithma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Langkah-langkah tersebut harus logis ini berarti nilai kebenarannya harus dapat di tentukan, benar atau salah. Langah-langkah yang tidak benar dapat memberikan hasil yang salah.
Algorithma merupakan jantung ilmu komputer atau informatika tetapi algoritma tidak selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari banyak terdapat proses yang digambarkan dalam suatu algorithma. Contohnya resep masakan/membuat kue (resep kue), membuat pakaian (pola pakaian), merakit mobil (panduan merakit).

CIRI-CIRI ALGORITMA YANG BAIK.
a. Tepat sasaran : memenuhi spesifikasi pekerjaan dan bekerja sesuai tujuan
b. Flexible dan portable :
- Flexible untuk dikembangkan lebih lanjut
- Portable untuk digunakan pada berbagai sistem dan mesin
c. Bersih dari kesalahan sistem ataupun lojik
d. Efektif : setiap langkah harus sederhana sehingga dapat dikerjakan dalam
sejumlah waktu yang masuk akal.
e. Murah:
- Efisien dalam penggunaan piranti memori dan penyimpanan lainnya.
- Cepat waktu pelaksanaannya.
f. Didokumentasi dengan baik untuk pengoperasian, pemeliharaan dan
pengembangan.
g. Algoritma merupakan pemberian (description) pelaksanaan suatu proses.
h. Tidak ambiguous : tidak bermakna ganda.
i. Harus berhenti setelah mengerjakan sejumlah langkah terbatas.

ATURAN PENULISAN TEKS ALGORITMA
Ada dua cara penulisan Algoritma, yaitu :
O Uraian deskriftif (bahasa natural, manusia)
Kelemahannya masih sering membingungkan (ambigu)/sulit dipahami

O Menggunakan bagan-bagan/symbol-simbol tertentu seperti Diagram Alir
(Flowchart)
Flow-chart atau bagan alir adalah suatu skema/gambar yang memperlihatkan urutan intruksi/kegiatan dan hubungan antar proses beserta instruksinya.
Gambaran ini dinyatakan dengan symbol. Dengan demikian setiap symbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung.
Teori dasar nya adalah sebuah program secara sederhana digambarkan dengan alur proses sebagai berikut :
• Masukkan (Input)
• Proses
• Keluaran (Output)

adapun notasi dalam flowchart ini yaitu ;


Contoh pemakaian flowchart menghitung luas lingkaran


O Menggunakan kata-kata atau kalimat yang mirip dengan bahasa pemrograman yaitu pseudo code

Pseudocode banyak digunakan untuk mewakili urutan-urutan proses dari program.
Pseudo berarti imitasi dan code dihubungkan dengan instruksi yang ditulis dalam bahasa
computer.
Tujuan digunakan pseudocode yaitu untuk menjembatani jurang antara bahasa
sehari-hari programmer dengan bahasa computer. Pseudocode disebut juga dengan bahasa
inggris terstruktur. Karena merupakan kombinasi elemen-elemen dasar dari pemrograman
terstruktur dengan menggunakan bahasa inggris.
Pseudocode dapat juga ditulis dengan bahasa Indonesia. Pseudocode merupakan
suatu bahasa yang memungkinkan programmer untuk berpikir terhadap permasalahan yang
harus dipecahkan tanpa harus memikirkan syntax dari bahasa pemrogramman tertentu.
Jadi pseudocode digunakan untuk menggambarkan logika urut-urutan dari program
tanpa memandang bagaimana bahasa pemrogramannya.

Contoh suatu pseudocode :

Mulai
Nilai a=3 ; b=5 ; c=0
Hitung c = a * b
Tampilkan nilai c
End

Contoh Latihan
1. Buatlah algoritma sewaktu akan menelpon di telepon umum.

Jawab.
1. a. Angkat gagang telepon
b. Masukkan koin
c. Tekan nomor yang akan dihubungi
d. Bicara
e. letakkan gagang telepon.

Langkah tersebut diatas apabila dalam kondisi normal, tetapi dalam keadaan tidak normal maka, langkah langkah tersebut tidak akan memecahkan masalah. Sehingga
algoritma diatas dapat dikembangkan lebih lanjut, seperti berikut ini :

1. Angkat gagang telepon
2. a. Jika terdengan nada panggil, masukkan koin
b. JIka tidak terdengan nada panggil, ke langkah v
3. Tekan nomor yang akan dihubungi
4. a. Jika telepon yang dihubungi ada yang mengangkat, bicara
b. Jika telepon yang dihubungi tidak ada yang mengangkat, ke langkah v
5. Letakkan gagang telepon

C, mengkompilasi
Kompilasi merupakan Tahapan pemeriksaan terhadap program yang disusun yang akan dilakukan oleh komputer dengan menggunakan Processor Program atau Kompiler
Processor Program berfungsi sebagai alat/program yang akan menerjemahkan program yang dimasukkan ke dalam bahasa yang dimengerti oleh komputer (Objek Program)
D, menguji
Setelah selesai kompiling, langkah selanjutnya yaitu menguji program tersebut apakah telah berjalan sesuai dengan tujuannya untuk memberi solusi dari suatu permasalahan
Apabila program belum berjalan dengan baik, maka perlu mengkaji kembali rumusan/algoritma yang telah dibuat pada langkah pertama, serta memperbaiki implementasi program yang mungkin keliru
E, DOKUMENTASI
Untuk memudahkan dalam memeriksa kesalahan suatu program ataupun memahami jalannya program, perlu membuat dokumentasi dari program yang dibuat
Dokumentasi tersebut berisi informasi mulai dari tujuan/fungsi program, algoritma program, hingga cara menggunakannya
F, pengembangan

Tidak ada komentar:

Posting Komentar