Download - 2- Teknik Penyajian Algoritma
-
8/17/2019 2- Teknik Penyajian Algoritma
1/18
Teknik Penyajian Algoritma
Teknik Tulisan Structure English
PseudocodePseudocode
Teknik Gambar Structure Chart
HIPO
FlowchartFlowchartNassi Schneiderman Chart
-
8/17/2019 2- Teknik Penyajian Algoritma
2/18
Pseudocode
Pseudocode ode miri! dengan kode !emrograman yang
sebenarnya"
Arti !seudo# imitasi atau miri! atau menyeru!ai
Arti code# kode !rogram" $asis# bahasa !emrograman
%ebih rinci dari structure English& 'a!at menyatakan ti!e data yang digunakan
struktur !enulisan# se(uence structure
selection structure
loo!ing structure"
-
8/17/2019 2- Teknik Penyajian Algoritma
3/18
Aturan PenulisanAlgoritma Setia! Algoritma akan selalu terdiri dari
tiga bagian yaitu # )udul *Header+ amus *'eklarasi+ Algoritma *'eskri!si+
omentar mengenai setia! bagian
dituliskan diantara tanda kurung kura,acontoh#
- omentar .
-
8/17/2019 2- Teknik Penyajian Algoritma
4/18
Judul (header)
adalah bagian teks algoritma yangdigunakan sebagai tem!atmende/nisikan nama dengan
menentukan a!akah teks tersebutadalah !rogram& !rosedur& 0ungsi"
Contoh#
Program Luas_Kubus- 1enghitung luas kubus untuk ukuran sisi yang dibaca dari !iranti ma lalu mencetak hasilnya ke!iranti keluaran.
Judul Algoritma
Spesifikasi Algoritma
-
8/17/2019 2- Teknik Penyajian Algoritma
5/18
Kamus (Deklarasi)
adalah bagian teks algoritma sebagaitem!at untuk mende/nisikan #Nama ty!e
Nama konstantaNama 2ariabel
Nama 0ungsi
Nama !rosedur
-
8/17/2019 2- Teknik Penyajian Algoritma
6/18
Kamus (Deklarasi)ContohKamus
-Nama ty!e& hanya untuk ty!e yang bukan ty!e dasar.
type jam # 3hh&mm&ss integer4 -yaitu 5hh6 jam" 5mm6 sebagai menit dan 5ss6 sebagai
detik.
-Nama konstanta& harus menyebutkan ty!e dan nilai .
constant !hi # real 7 8&9:9;<
constant nama # string 7 =Ale>?
constant benar # boolean 7 true
-Nama In0ormasi& menyebutkan ty!e.
>&y # integer -suatu nilai yang berty!e bilangan bulat.
N1a> # real -nilai maksimum yang berty!e bilangan real.
Nama # string -suatu nilai yang meru!akan kum!ulan character.
Cari # !oolean -suatu nilai logika.
-Nama 0ungsi& menyebutkan domain dan range.
"unction @ealToInt *>#real+ integer
-mengubah harga > yang berty!e real menjadi harga eki2alen yang berty!e
integer.
-Nama !rosedur& menyebutkan 5IS6 initial state& 5BS6 /nal state dan !roses.
procedure tukar *in!utout!ut >&y # real+- IS > dan y terde/nisi& > 7 a dan y 7 b
-
8/17/2019 2- Teknik Penyajian Algoritma
7/18
Algoritma *'eskri!si+
adalah bagian inti dari suatu algoritmayang berisi instruksi atau !emanggilanaksi yang telah dide/nisikan
om!onen algoritma *deskri!si+beru!a # Instruksi dasar se!erti in!utout!ut&
assignment Se(uence *runtutan+
O!erasi kondisional
Perulangan
-
8/17/2019 2- Teknik Penyajian Algoritma
8/18
Algoritma *'eskri!si+
Contoh
Contoh lengka!#
Algoritmainput *c&d+ -menerima masukan D bilangan c dan d.
i" c 3 d then -o!erasi kondisional.
e a F b -e di assignment oleh nilai a dan b.
else
e a b
output *e+ -hasil keluaran beru!a bilangan e.
Program Cetakstring
-mencetak string 5Selamat $elajar Algoritma dan Pemrograman6 kekeluaran.
Kamus
-tidak ada.
Algoritma
#utput *=Selamat $elajar Algoritma dan Pemrograman?+
-
8/17/2019 2- Teknik Penyajian Algoritma
9/18
Contoh Penulisan Algoritma%engka!
Program Nilai1aksimal
-1enentukan nilai tertinggi yang dibaca dari !iranti masukan dan hasilnya
dicetak
ke !iranti keluaran.Kamus
hasil&>&y # integer -hasil meru!akan 2ariabel untuk menam!ung nilai
keluaran.
->&y adalah 2ariabel untuk menam!ung nilai masukan.
Algoritma
input *>&y+ -membaca nilai > dan y dari !iranti masukan.i" > 3 y then -o!erasi kondisional.
hasil > -hasil di assignment oleh nila terbesar.
else
hasil y
output *hasil+ -nilai didalam 2ariabel hasil dicetak ke !iranti keluaran.
-
8/17/2019 2- Teknik Penyajian Algoritma
10/18
Blo,chart
Simbol simbol standard o,chart
Awal/Akhir Proses Input/Output proses terdefinisi
Program
Pengujian Variable/Nilai AwalPenghubung Penghubung
Satu Halaman Berbeda Halaman
Input/Output aris Alir
-
8/17/2019 2- Teknik Penyajian Algoritma
11/18
$eknik Penya%ian Algoritmadengan Flow &hart
'euence 'tructure (struktur urut)
A
B
C
Instruksi A
Instruksi B
Instruksi C
-
8/17/2019 2- Teknik Penyajian Algoritma
12/18
$eknik Penya%ian Algoritmadengan Flow &hart
'election 'tructure ('truktur 'eleksi) IB Selection
Contoh C++ syntax:
if (A==5) {
instruksi C;
}
!A"#
$
%a
&idak
-
8/17/2019 2- Teknik Penyajian Algoritma
13/18
$eknik Penya%ian Algoritmadengan Flow &hart
'election 'tructure ('truktur 'eleksi) IB E%SE Selection
B
!A"#
$
%a&idak
Contoh C++ syntax:
if (A==5) {
instruksi C;
}
else {
instruksi B;
}
-
8/17/2019 2- Teknik Penyajian Algoritma
14/18
$eknik Penya%ian Algoritmadengan Flow &hart
'election 'tructure ('truktur 'eleksi) CASE Selection
Contoh C++ Syntax:
switch (ar) {
case !w":instruksi A;
break;
case !x":
instruksi B;
break;
case !y":instruksi C;
break;
#efault:
instruksi D;
}
wVar
' (
default
A B $ )
-
8/17/2019 2- Teknik Penyajian Algoritma
15/18
$eknik Penya%ian Algoritmadengan Flow &hart
%oo!ing@e!etition Structure *StrukturPengulangan+ Bront Check @e!etition
!
*ondisi
A
B
Contoh C++ syntax:
while (kon#isi) {
instruksi A;
}
instruksi B;
Contoh C++ syntax:
while (kon#isi) {
instruksi A;
}
instruksi B;
CatatanCatatan::-Kondisi berisi nilai true atau falseKondisi berisi nilai true atau false-Kondisi dapat berupa persamaan relasiKondisi dapat berupa persamaan relasi
spt:spt: z < 5z < 5
z >= 10z >= 10
…… dsbdsb
-
8/17/2019 2- Teknik Penyajian Algoritma
16/18
$eknik Penya%ian Algoritmadengan Flow &hart
%oo!ing@e!etition Structure *StrukturPengulangan+
@ear Check @e!etition
!*ondisi
A
B
Contoh C++ syntax:
#o {
instruksi A;
} while (kon#isi)
instruksi B;
Contoh C++ syntax:
#o {
instruksi A;
} while (kon#isi)
instruksi B;
CatatanCatatan::-Kondisi berisi nilai true atau falseKondisi berisi nilai true atau false-Kondisi dapat berupa persamaan relasiKondisi dapat berupa persamaan relasi
spt:spt: z < 5z < 5
z >= 10z >= 10
…… dsbdsb
-
8/17/2019 2- Teknik Penyajian Algoritma
17/18
$eknik Penya%ian Algoritmadengan Flow &hart
%oo!ing@e!etition Structure *StrukturPengulangan+ Bi>ed @e!etition
Contoh C++ syntax:
for (x=$%x&=5%x++) {
instruksi A;
}
instruksi B;
Contoh C++ syntax:
for (x=$%x&=5%x++) {
instruksi A;
}
instruksi B;
+or ' " , to #
A
B
x
-
8/17/2019 2- Teknik Penyajian Algoritma
18/18
Thank?s
See Ja Ne>t Keek