2 struktur dasar algoritma dan notasi algoritmik pseudo-code

27
Struktur Dasar Algoritma dan Notasi Algoritmik pseudo-code Materi 2 MK. Pengantar Algoritma PSMI FMIPA Universitas Riau

Transcript of 2 struktur dasar algoritma dan notasi algoritmik pseudo-code

Page 1: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Struktur Dasar Algoritma dan Notasi Algoritmik pseudo-codeMateri 2MK. Pengantar AlgoritmaPSMI FMIPA Universitas Riau

Page 2: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Tujuan

•Mempelajari konsep dasar algoritma•Mempelajari beberapa istilah yang sering

dipakai dalam pemrograman dan struktur dasar algoritma

Page 3: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pernyataan•Algoritma berisi langkah-langkah

penyelesaian masalah•Setiap langkah dinyatakan sebagai

pernyataan•Pernyataan = statement = instruksi•Pernyataan berisi aksi (action) yang dilakukan•Contoh pernyataan algoritma:

Tulis “Hello, world”•Pernyataan tersebut memberi aksi menulis

pesan “Hello, world”

Page 4: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pernyataan

•Kalikan a dengan 2▫Menggambarkan aksi mengalikan a dengan 2 dan hasilnya disimpan di dalam a lagi

•Jika bulan = ‘januari’ maka tulis “jumlah hari = 31”▫Menggambarkan dua aksi, yaitu

membandingkan nilai variabel bulan dengan ‘januari’ dan aksi tulis pesan ‘jumlah hari = 31’ jika perbandingan itu benar

Page 5: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Konstruksi Dasar• Sebuah algoritma dibangun dari tiga struktur

dasar, yaitu:• Runtunan (sequence)• Pemilihan (selection)• Pengulangan (repetition)

?

Runtunan Pemilihan Pengulangan

Page 6: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Runtunan

•Runtunan terdiri dari satu atau lebih pernyataan

•Tiap pernyataan dikerjakan secara berurutan sesuai urutannya

•Urutan instruksi menentukan keadaan akhir algoritma

•Bila urutan diubah, maka hasil akhirnya juga berubah

Page 7: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Contoh•Konsep runtunan dapat kita lihat pada

algoritma mempertukarkan isi dua buah ember A dan ember B

•Algoritma menukar isi dua ember sama prinsipnya dengan menukar nilai dua variabel.

•Misalkan variabel A = 8 dan variabel B = 5•Algoritmanya:

▫Masukkan nilai A ke dalam C▫Masukkan nilai B ke dalam A▫Masukkan nilai C ke dalam B

Page 8: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pemilihan• Instruksi dikerjakan jika memenuhi kondisi

tertentu• Contoh kasus traffic light• Jika lampu berwarna merah maka kendaraan

harus berhenti• Pernyataan:jika lampu traffic light berwarna merah, maka berhenti

• Pernyataan pemilihan:if kondisi then

aksi

Page 9: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pemilihan• if berarti jika• then berarti maka• kondisi adalah persyaratan yang dapat bernilai

benar atau salah• aksi sesudah kata then hanya dilaksanakan

apabila kondisi benar• Struktur if-then tidak memberi pilihan aksi bila

kondisi bernilai salah• Struktur yang lebih umum ialah memilih satu

dari dua buah aksi bergantung pada nilai kondisinya.

Page 10: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pemilihan

if kondisi then aksi 1

elseaksi 2

•else artinya kalau tidak.•Bila kondisi benar maka aksi 1 akan

dikerjakan•Kalau tidak maka aksi 2 akan dikerjakan

Page 11: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pengulangan

•Salah satu kelebihan komputer adalah kemampuannya untuk mengerjakan pekerjaan yang sama berulang kali tanpa lelah.

•Ada 3 notasi pengulangan di algoritma:1. for2. repeat-until3. while

Page 12: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pengulangan • for pencacah pengulangan dari 1 sampai

n do• Contoh kasus, menulis 100 kalimat “saya

berjanji tidak akan nakal dan malas lagi”• Algoritma:

for i dari 1 sampai 100 doTulis “saya berjanji tidak akan

nakal dan malas lagi”• i adalah pencacah pengulangan dari 1 sampai

100

Page 13: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pengulangan repeat

aksiuntil kondisi

• pengulangan aksi dilakukan hingga kondisi berhenti terpenuhi

• Contoh:repeat

Tulis “saya berjanji tidak akan nakal dan malas lagi”

until i sudah 100 kali

Page 14: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Pengulangan while kondisi do

aksi

• selama kondisi benar maka aksi dilakukan• Contoh:

while i sampai dengan 100 do Tulis “saya berjanji tidak akan nakal dan malas

lagi”

Page 15: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Notasi pseudo-code

•Notasi algoritmik dalam bentuk pseudo-code mempunyai korespondensi dengan notasi bahasa pemrograman.

•Proses penterjemahan ke kode program menjadi lebih mudah

Page 16: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Contoh

•Notasi deskriptiftulis nilai X dan Y

•Notasi flowchart

•Notasi pseudo-codewrite (X,Y)

Tulis nilai X dan Y

write(X,Y)

Page 17: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Notasi pseudo-code

•Pada notasi pseudo-code, tidak mempersoalkan format tampilan keluaran dan hal teknis lain seperti yang diatur dalam bahasa pemrograman

•Notasi write dalam algoritma berkoresponden dengan write atau writeln dalam bahasa pascal, printf dalam bahasa C, WRITE dalam bahasa basic atau write dalam bahasa fortran.

Page 18: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Notasi pseudo-code•Algoritmik

write(X, Y)•Pascal

writeln(X, Y);•C

printf(“%d %d”,X,Y);• Java

System.out.println(X,Y)•PHP

echo $X. “ “.$Y;

Page 19: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Notasi pseudo-code• Notasi deskriptif

isikan nilai X ke dalam min• Pseudo-code

min X• notasi berarti mengisi (assign) variabel min dengan nilai X.• Pascal

min := X;• C

min = X;• Java

min = X;• PHP

$min = $X;

Page 20: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Struktur Teks Algoritma1. Algoritma untuk mencetak tulisan:

Hello, world2. Mencetak tabel konversi suhu dalam derajat

Fahrenheit (F) ke derajat Celcius (C) dengan rumus C = 5/9 . (F - 32)Data masukan adalah suhu awal (x) dan suhu akhir (y). Tabel keluaran memuat suhu mulai dari x sampai y F dengan kenaikan sebesar step. Misalkan x = 0, y = 100 dan step = 20.

Page 21: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Struktur Teks Algoritma

• Tabel yang dihasilkan:

0 -17.8

20 -6.7

40 4.4

60 15.6

80 26.7

100 37.8

Page 22: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Algoritma Hello, world

PROGRAM HelloWorld{ Program untuk mencetak “Hello, world”Masukan: - Keluaran: string ‘Hello, world’

}DEKLARASI{tidak ada }ALGORITMA:write(“Hello, world”)

Page 23: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Algoritma Fahrenheit ke CelciusPROGRAM FahrenheitCelcius{ Program untuk mencetak tabel Fahrenheit ke Celcius dari x sampai

y dengan kenaikan sebesar stepMasukan: suhu awal, suhu akhir, stepKeluaran: tabel konversi suhu dalam F dan C

}DEKLARASI

F, C : realx, y, step : integer

ALGORITMA:read(x,y,step)F xwhile F <= y do

C 5/9 * (F – 32) write(F, C)F F + step

endwhile

Page 24: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Notasi pseudo-code

•Ada 3 bagian dari notasi pseudo-code1. Bagian judul (header)2. Bagan deklarasi (declaration)3. Bagian algoritma

Page 25: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

BagianJudul

•Terdiri atas nama program dan penjelasan (spesifikasi) tentang program tersebut

Page 26: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Bagian Deklarasi

•Berisi semua nama yang dipakai dalam algoritma beserta propertinya (tipe)

•Nama tersebut adalah konstanta, variabel, tipe, prosedur dan fungsi

•Semua nama yang digunakan harus dikenali sebelum dipakai

•Biasanya aturan penulisan nama di pseudo-code inherent dengan bahasa pemrograman

Page 27: 2   struktur dasar algoritma dan notasi algoritmik pseudo-code

Bagian Algoritma

•Inti dari sebuah program•Berisi instruksi-instruksi pemecahan

masalah dalam notasi pseudo-code