Dasar Pemrogaman Algoritma

Post on 13-Apr-2017

247 views 2 download

Transcript of Dasar Pemrogaman Algoritma

Pemrograman DasarPengantar Algoritma

PTIIK- UB

Pemodelan Komputer Sederhana

Pengolah Data (Processor)

(berbasis Aritmatika dan Logika)

(Keluaran/Output)

COMPUTER TO – COMPUTE + ER

menghitung/mengolah bilangan

mengolah data

Data yg diolah

(Masukan/Input)

Data hasil olahan

Penyimpanan Data (Storage, e.g. memory)

Algoritma

Algoritma adalah sekumpulan langkah-langkah terbatas untuk mencari solusi suatu masalah.

Diambil dari nama Al Khawarizmi (Al Khawarizmi: On Calculation with Hindu–Arabic numeral system, 825M). Disalahpami sebagai Algoritmi (jamak latin dari Algoritmus), yang akhirnya menjadi Algorithm, metode kalkulasi.

Di pemrograman komputer, algoritma diimplementasikan dalam program komputer, i.e. satu set instruksi atau langkah-langkah yang dijalankan dengan komputer untuk menyelesaikan suatu masalah.

3

Tahap Pengembangan Algoritma

4

MASALAH / IDE

PEMECAHAN SOLUSI / HASIL

Algoritma Source Code

Executable Code

Tahap Pengembangan Algoritma

5

DEFINISI MASALAH

BUAT MODEL

RANCANG ALGORITMA TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Y

T

T

6

DEFINISI MASALAH

BUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Masalah:Tentukan akar-akar dari suatu persamaan kuadrat.

Definisi:Persamaan kuadrat : ax^2 + bx + c = 0

Data yg diperlukan :Nilai dari a, b dan c : tipe double

Tahap Pengembangan Algoritma

7

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Model Matematika :

Rumus ABC

x1 = (-b + sqrt(b^2 - 4ac))/2a

x2 = (-b – sqrt(b^2 - 4ac))/2a

Tahap Pengembangan Algoritma

88

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

Start

d = b^2 – 4ac

d < 0

Masukkan a,b,c

x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a

Stop

YT

Cetak: x1, x2

Cetak: “Akar imajiner”

Tahap Pengembangan Algoritma

9

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

10

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

11

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

12

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

Penyajian Algoritma

Algoritma dapat diekspresikan dalam bentuk: Tulisan, misal: structured english,

pseudocode, notasi lain Visual, misal: flow chart, activity diagram

13

Outline dari sebuah program komputer

Ditulis dalam bahasa Inggris atau Indonesia sederhana

Kata kunci (keyword) digunakan untuk menjelaskan struktur kendali (misalnya: “jika”, “ulangi”, “sampai”,”if”,”repeat”, “until”)

14

Pseudocode

Algoritma Menggunakan KalkulatorMulai

Nyalakan kalkulatorKosongkan KalkulatorUlangi

Input hargaTekan tombol Plus (+)

Sampai semua harga diinputTampilkan total hargaMatikan kalkulator

Selesai

15

Contoh pseudocode

Algoritma Berangkat Kuliah

MulaiBangun dari tempat tidurMandi PagiSarapan PagiPergi Ke KampusCari Ruang KuliahMasuk kelas untuk Kuliah

Selesai

16

Contoh pseudocode

Algoritma Sarapan Pagi

MulaiAmbil piringMasukkan nasi dan lauk dalam piringAmbil sendok dan garpuUlangi

Angkat sendok dan garpuAmbil nasi dan laukSuapkan ke dalam mulutTaruh sendok dan garpuKunyah

Sampai (nasi dan lauk habis) ATAU kekenyangan Bereskan piring, sendok dan garpu

Selesai17

Contoh pseudocode

18

Terminator

Proses

Pemilihan

Input/Output

Dokumen

Pengulangan

Arah

Konektor antar halaman

Konektor

Pemanggilan Procedure

Flow Chart

19

Start

d = b^2 – 4ac

d < 0

x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a

Stop

Y

T

Masukkan a,b,c

Cetak x1,x2

Cetak Pesan “Akar imajiner”

Contoh flow chart

Mempunyai logika yang tepat untuk memecahkan masalah.

Menghasilkan keluaran yang benar dalam waktu yang singkat.

Ditulis dengan bahasa baku terstruktur sehingga tidak menimbulkan arti ganda atau ambigu.

Ditulis dengan format baku sehingga mudah diimplementasikan kedalam bahasa pemrograman.

Semua operasi didefinisikan dengan jelas dan berakhir sesudah sejumlah langkah.

20

Kriteria algoritma yang baik

1. Buatlah algoritma menggunakan pseudocode dan flowchart untuk menghitung luas persegi panjang

2. Buatlah algoritma menggunakan pseudocode dan flowchart untuk mengubah jam dan menit yang diinput ke dalam satuan detik.

3. Buatlah algoritma menggunakan pseudocode dan flowchart untuk menghitung luas lingkaran.

4. Buatlah algoritma menggunakan pseudocode dan flowchart untuk menginput 3 buah bilangan, kemudian tentukan bilangan terbesar, terkecil dan rata-ratanya

21

Latihan