Transcript
Page 1: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

Algoritma Pemrograman 2C

Indah Wahyuni

Pertemuan 1

Page 2: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 3: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

PENGENALAN ALGORITMA

Algoritma Pemrograman 2C

Page 4: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 5: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 6: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

Algoritma & Pemrograman

Algoritma Program Pemroses

(komputer)

Masalah

Solve

Pemrograman – Bahasa

Pemrograman

3

Page 7: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

Pemrograman

Source Program

Penerjemah : + Compiler + Intepreter

Bahasa Mesin

4

Page 8: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 9: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 10: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

Tujuan dan fungsinya

Bahasan Pemrograman

7

Page 11: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 12: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 13: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 14: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

PENGENALAN TEKNIK-TEKNIK BAHASA PEMROGRAMAN

Algoritma Pemrograman 2C

Page 15: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 16: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 17: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

Functionally

• Fungsi adalah kumpulan pernyataan-pernyataan yang dibentuk untuk menyelesaikan suatu tugas.

• Hasil dari fungsi adalah nama fungsi yang hanya menghasilkan satu nilai.

13

Page 18: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 19: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 20: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

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

Page 21: Algoritma Pemrograman 2Ciwahyuni.staff.gunadarma.ac.id/Downloads/files...misal Qbasic, Cobol, Fortran, C, C++, Turbo Pascal, Java, dll. 3. Bahasa pemrograman tingkat sangat tinggi

Recommended