Dasar Pemrogaman Algoritma

21
Pemrograman Dasar Pengantar Algoritma PTIIK- UB

Transcript of Dasar Pemrogaman Algoritma

Page 1: Dasar Pemrogaman Algoritma

Pemrograman DasarPengantar Algoritma

PTIIK- UB

Page 2: Dasar Pemrogaman Algoritma

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)

Page 3: Dasar Pemrogaman Algoritma

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

Page 4: Dasar Pemrogaman Algoritma

Tahap Pengembangan Algoritma

4

MASALAH / IDE

PEMECAHAN SOLUSI / HASIL

Algoritma Source Code

Executable Code

Page 5: Dasar Pemrogaman Algoritma

Tahap Pengembangan Algoritma

5

DEFINISI MASALAH

BUAT MODEL

RANCANG ALGORITMA TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Y

T

T

Page 6: Dasar Pemrogaman Algoritma

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

Page 7: Dasar Pemrogaman 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

Page 8: Dasar Pemrogaman 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

Page 9: Dasar Pemrogaman Algoritma

9

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

Page 10: Dasar Pemrogaman Algoritma

10

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

Page 11: Dasar Pemrogaman Algoritma

11

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

Page 12: Dasar Pemrogaman Algoritma

12

DEFINISI MASALAH

MEMBUAT MODEL

RANCANG ALGORITMA

TULIS PROGRAM

Executable code: => Run

Error

DOKUMEN TASI

Tahap Pengembangan Algoritma

Page 13: Dasar Pemrogaman Algoritma

Penyajian Algoritma

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

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

13

Page 14: Dasar Pemrogaman Algoritma

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

Page 15: Dasar Pemrogaman Algoritma

Algoritma Menggunakan KalkulatorMulai

Nyalakan kalkulatorKosongkan KalkulatorUlangi

Input hargaTekan tombol Plus (+)

Sampai semua harga diinputTampilkan total hargaMatikan kalkulator

Selesai

15

Contoh pseudocode

Page 16: Dasar Pemrogaman Algoritma

Algoritma Berangkat Kuliah

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

Selesai

16

Contoh pseudocode

Page 17: Dasar Pemrogaman Algoritma

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

Page 18: Dasar Pemrogaman Algoritma

18

Terminator

Proses

Pemilihan

Input/Output

Dokumen

Pengulangan

Arah

Konektor antar halaman

Konektor

Pemanggilan Procedure

Flow Chart

Page 19: Dasar Pemrogaman Algoritma

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

Page 20: Dasar Pemrogaman Algoritma

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

Page 21: Dasar Pemrogaman Algoritma

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