chapter 1 - algoritma & pemograman 1

Upload: hellmy15

Post on 09-Jul-2015

117 views

Category:

Documents


0 download

TRANSCRIPT

9/18/2011

Algoritma & Pemograman 1(Flowchart & C++)

Eman Suryaman [email protected] 0815-140-6565-3

Bab I Pendahuluan

Eman Suryaman [email protected] 0815-140-6565-3

1

9/18/2011

Sejarah Algoritma Asal kata Algoritma berasal dari nama Abu Jafar Mohammed Ibnu Musa al Khowarizmi Penulis buku Arab yang terkenal yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya Buku Pemugaran dan Pengurangan (The book of restoration and reduction). Dikenal sebagai Bapak Aljabar.

Definisi AlgoritmaAlgoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar.

2

9/18/2011

Contoh Algoritma1. Nyalakan komputer 2. Buka browser 3. Ketik www.yahoo.co.id pada alamat browser 4. Login, masukkan UserID 5. Masukkan password 6. Pilih/Klik tombol Tulis Pesan 7. Masukkan alamat email tujuan 8. Masukkan judul email 9. Masukkan isi pesan 10. Pilih/Klik tombol kirim

Sifat-sifat Algoritma Banyaknya langkah yang hinggaBanyaknya intruksi atau langkah haruslah berhingga, jika tidak demikian, proses yang dilakukan memerlukan waktu yang relatif lebih lama.

Jelas pada setiap langkahnyaSetiap langkah didalam algoritma harus memiliki arti yang khusus dan spesifik, karena langkah tersebut diperuntukkan bagi komputer nantinya.

Batasan dari rangkaian prosesRangkaian proses yang berisi langkah-langkah dari suatu algoritma yang akan dilaksanakan harus ditetapkan dengan pasti.

Batasan dari input dan outputInput harus sesuai dengan algoritma yang bersangkutan. Output merupakan hasil pemrosesan sebuah input.

EfektivitasIntruksi dari sebuah algoritma dapat memerintahkan komputer agar hanya melaksanakan penugasan yang mampu dilaksanakannya saja. Komputer tidak dapat melaksanakan intruksi jika informasinya tidak lengkap

Batasan ruang lingkupSebuah algoritma adalah diperuntukkan bagi suatu masalah tertentu.

3

9/18/2011

Ciri-ciri Algoritma Ada Input Ada Proses Ada Output Memiliki intruksi-instruksi yang jelas Ada Batasan, algoritma harus memiliki titik berhenti

Tujuan dan Fungsi AlgoritmaTujuanMelakukan suatu perencanaan dalam menyelesaikan masalah untuk mendapatkan solusi yang optimal

Fungsi Membantu memudahkan pembuatan program secara umum Menghasilkan program yang terstruktur serta output yang sesuai dengan perencanaan Hubungan antara algoritma, masalah dan solusi :

4

9/18/2011

Penulisan / Penyajian Algoritma Natural Language / Bahasa Natural AlamiCara penulisan algoritma yang menggunakan bahasa manusia. disajikan dengan

PseudocodeCara penulisan algoritma secara high-level (level tingkat tinggi, biasanya dituliskan dengan kombinasi Bahasa Inggris dan notasi matematika.

FlowchartCara penulisan algoritma yang disajikan dalam bentuk diagram alur yang menggambarkan urutan langkah dalam suatu proses.

Natural Language (Keliling Persegi Panjang)1. Peroleh nilai panjang 2. Peroleh nilai lebar 3. Hitung keliling persegi panjang dengan menggunakan rumus 2 X (panjang + lebar) 4. Tampilkan nilai keliling persegi panjang

5

9/18/2011

Pseudocode (Keliling Persegi Panjang)1. 2. 3. 4. Input panjang Input lebar keliling 2 X (panjang + lebar) Print keliling

Flowchart (Keliling Persegi Panjang)

6

9/18/2011

Definisi PemrogramanProgram : Kumpulan intruksi yang sistematis yang digunakan untuk mengatur komputer dalam melakukan suatu tindakan tertentu. Pemrogram : Orang yang membuat program. Bahasa Pemrograman : Bahasa yang digunakan oleh manusia untuk memberikan perintah-perintah kepada komputer. Pemograman : Aktifitas yang berhubungan dengan pembuatan program. Program = Algoritma + Bahasa Pemrograman

Klasifikasi Bahasa Pemrograman Low-Level Language (Bahasa Tingkat Rendah)

High-Level Language (Bahasa Tingkat Tinggi)

7

9/18/2011

Low-Level Language (Bahasa Tingkat Rendah)Bahasa Tingkat Rendah adalah Bahasa pemograman yang berorientasi kepada mesin.- Menggunakan kode biner (yang hanya mengenal kode 0 dan 1) atau suatu kode sederhana untuk menggantikan kode-kode tertentu dalam sistem biner. - Eksekusi program yang sangat cepat. - Disebut juga Bahasa Mesin (Machine Language) - Disebut juga Bahasa Rakitan (Assembly Language) - Sangat tergantung kepada mesin.

Low-Level Language (Bahasa Tingkat Rendah) ASSLEMBER ASSLEMBER 8080

8

9/18/2011

High-Level Language (Bahasa Tingkat Tinggi)Bahasa Tingkat Tinggi adalah Bahasa pemograman yang berorientasi kepada bahasa manusia.- Menggunakan bahasa yang mudah dipahami oleh manusia. - Eksekusi program tidak begitu cepat jika dibandingkan dengan bahasa tingkat rendah. - Dibutuhkan penerjemah / translator. - Translator dapat berupa Interpreter dan Kompiler.

High-Level Language (Bahasa Tingkat Tinggi) BASIC PASCAL C C++ JAVA

9

9/18/2011

Penerjemah / Translator Interpreter Kompiler

Interpreter

* Proses penerjemahan pada interpreter

10

9/18/2011

Kompiler

* Proses penerjemahan pada kompiler

Perbedaan Interpreter dan KompilerInterpreter Kelebihan: Kemudahan mencari kesalahan. Kompiler Kelebihan: 1. Pengerjaan dilakukan dengan sangat cepat. 2. Kode Objek dapat didistribusikan ke komputer lain tanpa perlu menyertakan kode sumber dan kompiler. 3. Kerahasian kode sumber terjamin. Kelemahan: Seluruh kode sumber harus benar secara sintaks agar program dapat diuji.

Kelemahan: 1. Kode sumber harus selalu tersedia. 2. Eksekusi program lambat.

11

9/18/2011

LatihanBuatlah sebuah algoritma dalam mencari luas persegi panjang dengan menggunakan penyajian algoritma di bawah ini: Natural Language Pseudocode Flowchart Waktu : 10 menit Dikerjakan di kertas dengan mencantumkan : NIM : 2011050505 NAMA : EMAN SURYAMAN JUNAEDI KELAS : 1 X

TugasBuatlah sebuah algoritma dalam mencari luas lingkaran dengan menggunakan penyajian algoritma di bawah ini: Natural Language Pseudocode Flowchart Waktu : paling lambat satu hari sebelum pertemuan selanjutnya pada pukul 23:59. Dikumpulkan melalui email dalam format word/visio/pdf. To : [email protected] Subject : T1-PAGI-1X-2011050505-EMAN SURYAMAN JUNAEDI

12