Representasi Algoritma

Preview:

Citation preview

PERTEMUAN KE-2 :

REPRESENTASI ALGORITMA

ALGORITMA PEMROGRAMAN DAN STRUKTUR DATA

Bentuk Representasi Algoritma :

Bentuk tulisan Uraian deskriptif Pseudocode

Bentuk gambar Flowchart Structure chart DFD (Data Flow Diagram) Warnier Diagram IPO (Input Process Output) HIPO (Hierarchical Input Process Output)

1. Uraian Deskriptif

Uraian deskriptif merupakan algoritma yang disajikan dengan menggunakan struktur bahasa tertentu (misalnya bahasa Indonesia atau bahasa Inggris).

Contoh Uraian Deskriptif

Menghitung luas persegi panjang.Baca panjang dan lebar (P,L)Hitung luas (Luas = P * L)Cetak hasil (Luas)

Menghitung rata-rata 3 buah data.Baca bilangan a, b dan cJumlahkan ketiga bilangan tersebutBagi jumlah tersebut dengan 3Tulis hasilnya

2. Pseudocode

Pseudocode adalah algoritma yang mirip dengan kode pemrograman yang sebenarnya.

Pseudocode ditulis berbasiskan bahasa pemrograman tertentu misalnya Pascal, C atau Python, sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan dengan pemrogram.

Pseudocode lebih rinci dibandingkan dengan uraian deskriptif, misalnya dalam menyatakan sintaksis, variabel, tipe data yang digunakan dan lain-lain.

Dalam pseudocode selalu terdiri dari tiga bagian yaitu :

Judul (header)KamusAlgoritma

Pada setiap bagian tersebut apabila akan dituliskan komentar mengenai setiap bagian tersebut dituliskan diantara tanda kurung kurawal.Contoh :

{ Komentar }

Judul { Pada bagian ini adalah komentar mengenai algoritma seperti cara kerja program, kondisi awal dan kondisi akhir dari algoritma }

Kamus { Pada bagian ini adalah mendefinisikan nama konstanta, nama variabel, nama prosedur dan nama fungsi }

Algoritma { Pada bagian ini algoritma dituliskan. Semua teks yang dituliskan tidak diantara tanda kurung kurawal akan dianggap sebagai notasi algoritma yang akan berpengaruh terhadap kebenaran algoritma }

Judul (header)

Judul adalah bagian teks algoritma yang digunakan sebagai tempat mendefinisikan nama dengan menentukan apakah teks tersebut adalah program, prosedur, atau fungsi.

Nama algoritma sebaiknya singkat namun cukup menggambarkan apa yang akan dilakukan oleh algoritma tersebut.

Contoh :

Program Luas_Kubus { Menghitung luas kubus untuk ukuran sisi yang dibaca dari piranti masukan lalu mencetak hasilnya ke piranti keluaran }

Kamus (Deklarasi)

Kamus adalah bagian teks algoritma sebagai tempat untuk mendefinisikan : Nama Tipe Nama Konstanta Nama Variabel Nama Fungsi Nama Prosedur

Contoh :Kamus  { Nama type hanya untuk typr yang bukan type dasar }  type jam : <hh,mm,ss : integer>    { Nama konstanta, harus menyebutkan type dan nilai }  constant phi : real = 3,14159 constant nama : string = “Alex” constant benar : boolean = true   { Nama variabel, harus menyebutkan type }  x, y : integer { nilai yang bertipe bilangan bulat } max : real { nilai yang bertipe bilangan real } nama : string { merupakan kumpulan karakter } cari : boolean { nilai logika }

  { Nama fungsi, menyebutkan domain dan range }  function RealtoInt (x : real) → integer  

{ Nama prosedur, menyebutkan inisial state (IS), final state (FS) dan proses }   Procedure tukar (input/output x,y : integer)  { IS → x dan y terdefinisi, x = a dan y = b FS → x = b dan y = a Proses → menukar isi informasi bilangan x dan y }

Algoritma (deskripsi)

Algoritma adalah bagian inti dari suatu algoritma yang berisi instruksi atau pemanggilan aksi yang telah didefinisikan.

Contoh :Algoritma input (sisi) {menerima masukan untuk variabel sisi} luas ← sisi*sisi {luas di assignment oleh nilai sisi*sisi} output (luas) {hasil keluaran berupa bilangan luas}

Program Luas_Persegi{ }

Kamus p : integer l : real luas : real

Algoritma input(p,l) luas <- p*l output (luas)

3. Flowchart

Flowchart (bagan alir) merupakan representasi secara grafik dari suatu algoritma atau prosedur untuk menyelesaikan suatu masalah.

Flowchart terdiri dari dua macam, yaitu : Flowchart Sistem Flowchart Program

Flowchart Sistem

Yaitu diagram alir yang menggambarkan suatu sistem peralatan komputer yang digunakan dalam proses pengolahan data dan koneksi antar peralatan tersebut.

Flowchart sistem digunakan untuk menggambarkan urutan langkah dalam memecahkan masalah, tetapi hanya berisi prosedur dalam sistem yang dibentuk.

Simbol-simbol yang digunakan :

Input Output

Manual Input

Proses

Magnetic Disk

File

Arah Proses

Flowchart Program

Yaitu bagan yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah.

Simbol-simbol yang digunakan :

(terminal symbol), menunjukan awal dan akhirsebuah program

(preparation symbol), memberikan nilai awalpada suatu variabel

(processing symbol), menunjukan pengolahanaritmatika dan pemindahan data

(input/output symbol), menunjukan proses inputatau output

(decision symbol), untuk mewakili operasiperbandingan logika

(predefined process symbol), proses yang ditulissebagai sub program, yaitu prosedur/fungsi

(connector symbol), penghubung pada halamanyang sama

(off page connector symbol), penghubung padahalaman yang berbeda

Arah Proses

Contoh : Menghitung Luas Persegi Panjang

Recommended