Notasi Algoritma dan Tipe Data Implementasi Algortima Notasi

  • Slides: 25
Download presentation
Notasi Algoritma dan Tipe Data Implementasi Algortima

Notasi Algoritma dan Tipe Data Implementasi Algortima

Notasi Algoritmik Ø Teks algoritma terdiri atas 3 bagian: q Judul q Kamus :

Notasi Algoritmik Ø Teks algoritma terdiri atas 3 bagian: q Judul q Kamus : spesifikasi teks algoritma secara umum : pendefinisian nama konstanta, variabel, spesifikasi prosedur, spesifikasi fungsi. q Algoritma : instruksi-instruksi proses yang dilakukan Catatan : “Komentar”, dituliskan diantara tanda kurung kurawal 2

Contoh Judul algoritma_sederhana {algoritma untuk menampilkan isi wadah} Kamus wadah : string Algoritma Output(“memasukan

Contoh Judul algoritma_sederhana {algoritma untuk menampilkan isi wadah} Kamus wadah : string Algoritma Output(“memasukan tulisan”) Input(wadah) Output(wadah) 3

Nama Definisi : sesuatu yang dipakai sebagai identifikasi Aturan pemberian nama : 1. Dalam

Nama Definisi : sesuatu yang dipakai sebagai identifikasi Aturan pemberian nama : 1. Dalam bahasa pemrograman, setiap “nama” mempunyai aturan penulisan. Pada teks algoritma tidak ada aturan ketat 2. Harus interpretative, tidak menimbulkan kerancuan. Jika singkat harus disertai penjelasan. 3. Harus ditulis utuh (tidak dipisah blank) 4. Harus unik (hanya didefinisikan 1 x saja) 4

Tipe Data Value / Tipe dari isi yang dapat ditampung wadah Ilustrasi : Wadah/tempat

Tipe Data Value / Tipe dari isi yang dapat ditampung wadah Ilustrasi : Wadah/tempat A Penulisan : A : Nama AIR Nama wadah A hanya bisa menampung air Tipe 5

Tipe Data Definisi Kegunaan Tipe Data : Pola representasi suatu data dalam computer :

Tipe Data Definisi Kegunaan Tipe Data : Pola representasi suatu data dalam computer : Mendefinisikan obyek yang akan di program Dasar Bentukan char integer real boolean String (tipe dasar khusus) Enumerasi Cara Penulisan: Bilangan : integer 6

Contoh penulisan wadah dalam Kamus Type point : <x: integer, y: integer> {koordinat pada

Contoh penulisan wadah dalam Kamus Type point : <x: integer, y: integer> {koordinat pada sumbu kartesian} Constant phi : real = 3. 14 {konstanta, harus menyebutkan tipe data & nilainya} Constant bil : integer = 100 Hasil: integer {variabel, menyebutkan tipe datanya} Jawab : Boolean Titik : point Function inttoreal(i: integer) real {mengkonversi harga i yang bertipe integer menjadi bertipe real} Procedure tulis(input pesan: integer) { I. S : Sembarang F. S : Pesan tertulis dilayar} 7

Tipe Data : char Nama : char Domain : himpunan yang terdefinisi oleh suatu

Tipe Data : char Nama : char Domain : himpunan yang terdefinisi oleh suatu enemurasi, misal: [‘ 1’ , ’A’ , ’y’ , return , space] Konstanta : dituliskan diantara tanda petik, misal: ‘A’ , ’Z’ 8

Operator Kelompok Operator Arti Hasil Operator perbandingan = Sama dengan Boolean ≠ Tidak sama

Operator Kelompok Operator Arti Hasil Operator perbandingan = Sama dengan Boolean ≠ Tidak sama dengan boolean 9

Tipe Data : Integer/Bulat Nama : integer Domain : Z Konstanta : 100 ,

Tipe Data : Integer/Bulat Nama : integer Domain : Z Konstanta : 100 , 3, 0 , -3 Bilangan integer mempunyai keterurutan. Suksesor x : x+1 Predesesor : x-1 10

Operator Aritmatika Kelompok Operator Aritmatika Operator Arti Hasil * Kali Integer + Tambah Integer

Operator Aritmatika Kelompok Operator Aritmatika Operator Arti Hasil * Kali Integer + Tambah Integer - Kurang Integer / Bagi Real Div Hasil bagi Integer Mod Sisa hasil bagi Integer Abs Nilai absolut Integer ^ Pangkat integer 11

Operator Relasional Kelompok Operator Relasional (perbandingan) Operator Arti Hasil < Kurang dari Boolean ≤

Operator Relasional Kelompok Operator Relasional (perbandingan) Operator Arti Hasil < Kurang dari Boolean ≤ Kurang atau sama dengan dari Boolean > Lebih besar dari Boolean ≥ Lebih atau sama dengan dari Boolean = Sama dengan Boolean ≠ Tidak sama dengan Boolean 12

Tipe Data : Real/Rill Nama : real Domain : R Konstanta : 0. 2

Tipe Data : Real/Rill Nama : real Domain : R Konstanta : 0. 2 , 18. 9 , 100. 3 , 12. E-2 Operator : {sama seperti integer, * + - / ^ , tapi tipe hasil real} 13

Tipe Data : boolean Nama : Boolean Domain : [true, false] Konstanta : true,

Tipe Data : boolean Nama : Boolean Domain : [true, false] Konstanta : true, false 14

Operator Lojik Kelompok Operator Lojik Operator Arti Hasil AND Dan Boolean OR Atau Boolean

Operator Lojik Kelompok Operator Lojik Operator Arti Hasil AND Dan Boolean OR Atau Boolean XOR Ekslusive Boolean NOT Negasi Boolean EQ Ekivalensi Boolean NEQ Negasi ekivalensi Boolean 15

Tabel Kebenaran Operator Boolean Operasi Hasil T AND T T T OR T T

Tabel Kebenaran Operator Boolean Operasi Hasil T AND T T T OR T T T AND F F T OR F T F AND T F F OR T T F AND F F F OR F F NOT F T T XOR T F NOT T F T XOR F T T EQ T T F XOR T T T EQ F F F XOR F T F EQ T F F EQ F T 16

Tipe Data : String Nama Domain Konstanta Operator : string : untaian karakter :

Tipe Data : String Nama Domain Konstanta Operator : string : untaian karakter : ‘aku’ , ‘IT Telkom’ : Kelompok Operator Arti Hasil Oprator perbandingan = Sama dengan Boolean ≠ Tidak sama dengan Boolean • Tambah 1 karakter di akhir String o Tambah 1 karakter diakhir String & Konkatenasi(gabung) string konstruksi 17

Tipe Enumerasi Definisi : Tipe yang definisi domainnya tidak dilakukan menurut suatu aturan (by

Tipe Enumerasi Definisi : Tipe yang definisi domainnya tidak dilakukan menurut suatu aturan (by definition) melainkan dengan melakukan “enumerasi”/menyebutkan satu per satu nilainya. Kata kunci : Ø First Ø Last Ø Succesor Ø Predesesor 18

Contoh Type Mhs : (Adi, Budi, Cici, Eva, Revi) D 3 IF : Mhs

Contoh Type Mhs : (Adi, Budi, Cici, Eva, Revi) D 3 IF : Mhs Cara Mengakses : • First (D 3 IF) ? • Last (D 3 IF) ? • Succ (Budi) ? • Prec (Revi) ? 19

Tipe Bentukan Definisi : Tipe yang dibentuk dari beberapa komponen bertipe tertentu (tipe dasar

Tipe Bentukan Definisi : Tipe yang dibentuk dari beberapa komponen bertipe tertentu (tipe dasar atau tipe yang sudah dikenal) Notasi : Type nama : <elemen 1 : tipe, elemen 2 : tipe, … > 20

Contoh Type Miss. World : <nama : string, tinggi : integer, berat : real>

Contoh Type Miss. World : <nama : string, tinggi : integer, berat : real> Kandidat : Miss. World Cara mengacu : Kandidat. nama Kandidat. tinggi Kandidat. berat Ilustrasi Kandidat : nama tinggi berat 21

Contoh Domain : <string, integer, real> Konstanta : <“Anastasia” , 175 , 53. 5>

Contoh Domain : <string, integer, real> Konstanta : <“Anastasia” , 175 , 53. 5> Operator : • Menampilkan data • Menguji apakah tinggi & beratnya sudah ideal • Mengubah data 22

Contoh Type body : <tinggi : integer, berat: real> Type Miss. World : <nama

Contoh Type body : <tinggi : integer, berat: real> Type Miss. World : <nama : string, badan : body, status : char[1. . 2] > Kandidat : Miss. World Cara Mengacu : Kandidat. nama Kandidat. badan. tinggi Kandidat. badan. berat Kandidat. status Ilustrasi : badan tinggi berat nama status badan tinggi berat status Kandidat 23

Referensi • Liem, Inggriani. Diktat kuliah Algoritma & Pemrograman. ITB. 2003

Referensi • Liem, Inggriani. Diktat kuliah Algoritma & Pemrograman. ITB. 2003

See you… Thank you!

See you… Thank you!