Algoritma Pemrograman 2C
Indah Wahyuni
Pertemuan 1
Daftar Isi
• Pengenalan Algoritma – Definisi Algoritma
– Mengapa Belajar Algoritma & Pemrograman
– Pengenalan Jenis-jenis Bahasa Pemrograman
– Efisiensi Algoritma
• Pengenalan Teknik-teknik Bahasa Pemrograman – Object Oriented Programming (OOP)
– Functionally
– Terstruktur
– Modular
– Visual & Even Driven Programming
PENGENALAN ALGORITMA
Algoritma Pemrograman 2C
Algoritma??
1. Urutan langkah – langkah berhingga untuk memecahkan masalaha logika atau matematika
2. Logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan
3. Urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis
4. Urutan logis pengambilan keputusan untuk pemecahan masalah
1
Mengapa Belajar Algoritma & Pemrograman???
• Algoritma Merupakan Jantung Ilmu Informatika dan kehidupan sehari – hari
• Mekanisme Pelaksanaan Algoritma oleh Pemroses (Program)
• Belajar Memprogram Dan Belajar Bahasa Pemrograman
2
Algoritma & Pemrograman
Algoritma Program Pemroses
(komputer)
Masalah
Solve
Pemrograman – Bahasa
Pemrograman
3
Pemrograman
Source Program
Penerjemah : + Compiler + Intepreter
Bahasa Mesin
4
Intepreter Compiler
1. Menerjemahkan instruksi per instruksi Menerjemahkan secara keseluruhan
2. Soure program tidak harus ditulis lengkap Source program ditulis lengkap
3. Bila terjadi kesalahan kompilasi, dapat langsung dibetulkan secara interaktif
Bila terjadi kesalahan kompilasi, source program harus dibenarkan dan proses kompilasi diulang kembali
4. Tidak menghasilkan objek program Menghasilkan objek program
5. Tidak meghasilkan executable program karena langsung dijalankan pada saat program diinterpretasi
Menghasilkan executable program, sehingga dapat dijalankan di keadaan prompt sistem
6. Proses interpretasi terasa cepat, karena tiap-tiap instruksi langsung dikerjakan dan dapat dilihat hasilnya
Proses kompilasi lama, karena sekaligus menerjemahkan seluruh instruksi program
7. Source program terus dipergunakan karena tidak dihasilkan ececutable program
Source program sudah tidak dipergunakan lagi untuk mengerjakan program
8. Proses pengerjaan program lebih lambat, karena setiap instruksi dikerjakan harus diinterprestasikan ulang kembali
Proses pengerjaan program lebih cepat, karena executable program sudah dalam bahasa mesin
9. Keamanan dari program kurang terjamin, karena yang selalu digunakan adalah source program
Keamanan dari program lebih terjamin, karena yang dipergunakan ececutable program.
Pemrograman 5
Bahasan Pemrograman
Tiga level Bahasa Pemrograman:
1. Bahasa pemrograman tingkat rendah (low level language) – Bahasa mesin (machine language) yang selalu dibuat dan telah
disertakan menjadi satu (built in) dalam prosesor.
2. Bahasa pemrograman tingkat tinggi (high level language) – Bahasa-bahasa pemrograman yang banyak kita kenal selama ini,
misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll.
3. Bahasa pemrograman tingkat sangat tinggi (very high level language) – Bahasa query (query languange) seperti SQL (Sructured Query
Language) yang dapat digunakan untuk menampilkan informasi-informasi yang diinginkan hanya dengan menuliskan sedikit perintah saja.
6
Tujuan dan fungsinya
Bahasan Pemrograman
7
Effisiensi Algoritma
Analisis Suatu Algoritma: Untuk melihat faktor efesiensi & efektifitas dari algoritma, dapat dilihat pada :
1. Waktu Tempuh (Running Time) dari suatu Algortima.
Hal-hal yang dapat mempengaruhi waktu tempuh adalah : – Banyaknya langkah.
– Besar dan jenis input data.
– Jenis Operasi.
– Komputer dan kompilator
2. Jumlah Memori Yang Digunakan.
8
Kriteria algoritma yang baik:
1. Setiap langkah harus bersifat pasti/ tertentu (definite)
2. Minimal menghasilkan output
3. Terstruktur dan sistematis
4. Memiliki kriteria untuk menghentikan proses
5. Bersifat efisien, baik dari sisi waktu maupun penggunaan memori dalam sistem komputer
Effisiensi Algoritma
9
Algoritma dapat dinyatakan dalam dua bentuk:
a. Bentuk uraian/ deskriptif atau pseudocode
b. Bentuk gambar, yaitu menggunakan simbol-simbol grafik dalam bentuk bagan alir (flowchart
Effisiensi Algoritma
10
PENGENALAN TEKNIK-TEKNIK BAHASA PEMROGRAMAN
Algoritma Pemrograman 2C
Object Oriented Programming
1. Encapsulation (Pembungkusan)
– Sebuah proses penggabungan antara data-data dan fungsi yang berkaitan kedalam sebuah objek. Dengan demikian kita dapat membuat program yang terintegrasi tanpa harus mendeklarasikan variabel-variabel yang bersifat external.
11
Object Oriented Programming
2. Inheritance (Pewarisan) – Kita dapat menciptakan objek baru yang
diturunkan dari objek lain. Sifat yg terkandung didalam pada objek turunan adalah sifat hasil pewarisan dari sifat - sifat yg terdapat pada objek induk.
3. Polymorphism: – Adalah proses kebanyak rupaan, artinya kita
dapat mengimplementasikan sesuatu hal yang berbeda melalui suatu cara yang sama.
12
Functionally
• Fungsi adalah kumpulan pernyataan-pernyataan yang dibentuk untuk menyelesaikan suatu tugas.
• Hasil dari fungsi adalah nama fungsi yang hanya menghasilkan satu nilai.
13
Terstruktur
• Adalah cara pemrosesan data yang terstuktur.
• Terstruktur dalam: analisa, cara dan penulisan program.
• Bahasa pemrograman terstruktur adalah pemrograman yang mendukung abstraksi data, pengkodean terstruktur dan kontrol program terstruktur.
• Kontrol program terstruktur:
– Runtun - urut (sequence)
– Pilihan (selection)
– Pengulangan (repetition - loop)
14
Modular (Prosedural)
• Adalah bahasa pemrograman yang mendukung pembuatan program sebagai kumpulan prosedur.
• Prosedur-prosedur ini dapat saling memanggil dan dipanggil dari manapun dalam program dan dapat menggunakan parameter yang berbeda-beda untuk setiap pemanggilan.
• Prosedur adalah bagian dari program untuk melakukan operasi - operasi yang sudah ditentukan dengan menggunakan parameter tertentu
15
Visual & Even Driven Programming
• Event Driven adalah sebuah sifat yang terdapat pada bahasa pemrograman Microsoft Visual Basic (VB) dan menawarkan Integrated Development Environment (IDE) visual untuk membuat program aplikasi berbasis sistem operasi Microsoft Windows.
16