Upload
khairul-anwar
View
252
Download
2
Embed Size (px)
Citation preview
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