2 struktur dasar algoritma dan notasi algoritmik pseudo-code

Post on 11-Aug-2015

90 views 2 download

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

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

Tujuan

•Mempelajari konsep dasar algoritma•Mempelajari beberapa istilah yang sering

dipakai dalam pemrograman dan struktur dasar algoritma

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”

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

Konstruksi Dasar• Sebuah algoritma dibangun dari tiga struktur

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

?

Runtunan Pemilihan Pengulangan

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

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

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

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.

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

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

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

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

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”

Notasi pseudo-code

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

•Proses penterjemahan ke kode program menjadi lebih mudah

Contoh

•Notasi deskriptiftulis nilai X dan Y

•Notasi flowchart

•Notasi pseudo-codewrite (X,Y)

Tulis nilai X dan Y

write(X,Y)

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.

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;

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;

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.

Struktur Teks Algoritma

• Tabel yang dihasilkan:

0 -17.8

20 -6.7

40 4.4

60 15.6

80 26.7

100 37.8

Algoritma Hello, world

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

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

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

Notasi pseudo-code

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

BagianJudul

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

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

Bagian Algoritma

•Inti dari sebuah program•Berisi instruksi-instruksi pemecahan

masalah dalam notasi pseudo-code