Anda di halaman 1dari 21

Pemrograman Dasar

Pengantar Algoritma

PTIIK- UB

Pemodelan Komputer Sederhana


COMPUTER

TO COMPUTE + ER
menghitung/mengolah bilangan
mengolah data

Data yg diolah Pengolah Data Data hasil olahan


(Processor)
(Masukan/Input)
(berbasis Aritmatika (Keluaran/Output)
dan Logika)

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 HinduArabic numeral system,
825M). Disalahpahami 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.

Tahap Pengembangan Algoritma

MASALAH /
IDE

Algorit
ma

PEMECAH
AN

Source
Code

SOLUSI /
HASIL

Executabl
e Code

DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITMA

TULIS PROGRAM
COMPILE

Y Sintak Err
T
Executable code:
=> Run

YOutput Err
T
DOKUMEN TASI
5

DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITMA

TULIS PROGRAM

COMPILE

Masalah:
Tentukan akar-akar dari suatu
persamaan kwadrat.
Definisi:
Persamaan kwadrat : ax^2 + bx + c
=0
Data yg diperlukan :
Nilai dari a, b dan c

Sintak Err
Executable code:
=> Run

Output Err
DOKUMEN TASI
6

DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITMA

TULIS PROGRAM

COMPILE

Model Matematika :

Sintak Err

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

Executable code:
=> Run

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

Output Err
DOKUMEN TASI
7

DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITMA

Start

COMPILE

Masukkan a,b,c

Sintak Err

d = b^2 4ac
d<0
T

TULIS PROGRAM

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

Cetak:
Akar
majiner

Executable code:
=> Run

Output Err
DOKUMEN TASI

Stop

Tahap Pengembangan Algoritma


DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITM
A

TULIS
PROGRAM

Executable
code: =>
Run

Error
DOKUMEN
TASI
9

Tahap Pengembangan Algoritma


DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITM
A

TULIS
PROGRAM

Executable
code: =>
Run

Error
DOKUMEN
10
TASI

Tahap Pengembangan Algoritma

DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITM
A

TULIS
PROGRAM

Executable
code: =>
Run

Error
DOKUMEN
11
TASI

Tahap Pengembangan Algoritma

DEFINISI
MASALAH

MEMBUAT
MODEL

RANCANG
ALGORITM
A

TULIS
PROGRAM

Executable
code: =>
Run

Error
DOKUMEN
12
TASI

Penyajian Algoritma

Algoritma dapat diekspresikan dalam


bentuk:
Tulisan, misal: structured english,
pseudocode, notasi lain
Visual, misal: flow chart, activity
diagram

13

Pseudocode

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

Contoh pseudocode
Algoritma Menggunakan Kalkulator
Mulai
Nyalakan kalkulator
Kosongkan Kalkulator
Ulangi
Input harga
Tekan tombol Plus (+)
Sampai semua harga diinput
Tampilkan total harga
Matikan kalkulator
Selesai
15

Contoh pseudocode
Algoritma Berangkat Kuliah
Mulai
Bangun dari tempat tidur
Mandi Pagi
Sarapan Pagi
Pergi Ke Kampus
Cari Ruang Kuliah
Masuk kelas untuk Kuliah
Selesai
16

Contoh pseudocode
Algoritma Sarapan Pagi
Mulai
Ambil piring
Masukkan nasi dan lauk dalam piring
Ambil sendok dan garpu
Ulangi
Angkat sendok dan garpu
Ambil nasi dan lauk
Suapkan ke dalam mulut
Taruh sendok dan garpu
Kunyah
Sampai (nasi dan lauk habis) ATAU kekenyangan
Bereskan piring, sendok dan garpu
Selesai
17

Flow Chart
Terminato
r
Proses

Arah

Input/Outp
ut

Konektor antar
halaman

Dokumen
Pemiliha
n

Konektor

Pemanggilan
Procedure

Pengulangan
18

Contoh flow chart


Start
Masukk
an a,b,c
d = b^2 4ac
Y
d<0
T
x1=(-b+sqrt(d))/2a
x2 =(-b-sqrt(d))/2a

Cetak
Pesan Akar
imajiner

Cetak
x1,x2
Stop
19

Kriteria algoritma yang baik

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

Latihan
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

Anda mungkin juga menyukai