Professional Documents
Culture Documents
: : :
Sem 1 2010-2011
DAFTAR ISI
DAFTAR ISI......................................................................................................................... 1 CHECKLIST IMPLEMENTASI .......................................................................................... 2 F-01. ADT POINT ................................................................................................................ 3 F-02. ADT PECAHAN ......................................................................................................... 4 F-03. ADT DATE ................................................................................................................. 5 F-04. ADT LIST ................................................................................................................... 6 Bagian 1. List of Integer ................................................................................................... 6 Bagian 2. List of Character (Teks).................................................................................... 8 Bagian 3. Himpunan (Set) ................................................................................................ 9 Bagian 4. List of List ...................................................................................................... 10 F-05. ADT POHON BINER ............................................................................................... 11
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 1 dari 13
Sem 1 2010-2011
CHECKLIST IMPLEMENTASI
Isilah kolom Status dengan: Angka 0 jika belum dikerjakan. Angka 1 jika sudah dikerjakan, namun belum selesai atau masih salah. Angka 2 jika sudah dikerjakan dan sudah benar.
Nama ADT Point Pecahan Date List of Integer List of Character (Teks) Himpunan (Set) List of List Pohon Biner
Nama File
Status
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 2 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 3 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 4 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 5 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 6 dari 13
Sem 1 2010-2011
BEBERAPA DEFINISI DAN SPESIFIKASI FUNGSI LAIN NbElmt : List of integer integer { NbElmt(L) : Menghasilkan banyaknya elemen list L, nol jika kosong } ElmtkeN : integer 0 , List integer { ElmtkeN(N, L) : Mengirimkan elemen list L yang ke N, N NbELmt(L) dan N>=0} Copy : List of integer List of integer { Copy(L) : Menghasilkan list yang identik dengan list asal L } Inverse : List of integer List of integer { Inverse(L) : Menghasilkan list L yang dibalik, yaitu yang urutan elemennya adalah kebalikan dari list asal L } Konkat : 2 List of integer List of integer { Konkat(L1,L2) : Menghasilkan konkatenasi 2 buah list, dengan list L2 "sesudah" list L1} BEBERAPA DEFINISI DAN SPESIFIKASI PREDIKAT IsMember: integer, List of integer boolean { Ismember(X,L) adalah benar jika X adalah elemen list L } IsFirst: integer, List of integer tidak kosong boolean { IsFirst(X,L) adalah benar jika X adalah elemen pertama list L } IsLast : integer, List of integer tidak kosong boolean { IsLast (X,L) adalah benar jika X adalah elemen terakhir list L } IsNbElmtN : integer 0, List of integer boolean { IsNbElmtN(N, L) true jika banyaknya elemen list L sama dengan N } IsInverse : List of integer, List of integer boolean { IsInverse(L1,L2) true jika L2 adalah list dengan urutan elemen terbalik dibandingkan L1 } IsXElmtkeN : integer, integer > 0, List of integer boolean { IsXElmtkeN(X,N,L) adalah benar jika X adalah elemen list L yang ke-N, 0 < N NbElmt(L). } BEBERAPA DEFINISI DAN SPESIFIKASI OPERASI LAIN TERKAIT INTEGER MaxList : List of integer tidak kosong integer { MaxList(Li) : menghasilkan elemen Li yang bernilai maksimm } Dimensi : List of integer integer > 0 { Dimensi(Li) menghasilkan banyaknya elemen list integer } ListPlus : 2 List of integer 0 List of integer 0 { ListPlus(Li1,Li2): menjumlahkan setiap elemen list integer Li1 dan Li2 yang berdimensi sama, hasilnya berupa list integer berdimensi tsb. } Insort : List of integer List of integer { Insort(Li) menghasilkan list integer yang terurut dengan metoda insertion sort } MaxNb : List of integer <integer, integer> { MaxNb(Li) menghasilkan <nilai maksimum, kemunculan nilai maksimum> dari suatu list integer Li: <m,n> = m adalah elemen Li yang bernilai maksimum, dan n adalah jumlah occurence m dalam list L. }
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 7 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 8 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 9 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 10 dari 13
Sem 1 2010-2011
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 11 dari 13
Sem 1 2010-2011
NbDaun1 : PohonBiner integer 1 { Prekondisi : PohonBiner P tidak kosong } { NbDaun1 (P) memberikan banyaknya daun dari pohon P } RepPrefix: PohonBiner List of elemen { RepPrefix (P) memberikan representasi linier (dalam bentuk list), dengan urutan elemen list sesuai dengan urutan penulisan pohon secara prefix. P boleh kosong. } IsMember : PohonBiner, elemen boolean { IsMember(P,X) mengirimkan true jika ada node dari P yang bernilai X } IsSkewLeft: PohonBiner boolean { IsSkewLeft(P) mengirimkan true jika P adalah pohon condong kiri } IsSkewRight : PohonBiner boolean { IsSkewRight(P) mengirimkan true jika P adalah pohon condong kiri } LevelOfX: PohonBiner, elemen integer { LevelOfX(P,X) Mengirimkan level dari node X yang merupakan salah satu simpul dari pohon biner P } AddDaunTerkiri : PohonBiner, elemen PohonBiner { AddDaunTerkiri(P,X): mengirimkan pohon biner P yang telah bertambah simpulnya, dengan X sebagai simpul daun terkiri } AddDaun : PohonBiner tidak kosong, elemen, elemen, boolean PohonBiner { AddDaun (P,X,Y,Kiri) : P bertambah simpulnya, dengan Y sebagai anak kiri X (jika Kiri), atau sebagai anak Kanan X (jika not Kiri) } { Prekondisi : X adalah salah satu daun Pohon Biner P } DelDaunTerkiri: PohonBiner tidak kosong <PohonBiner, elemen> { DelDaunTerkiri(P) menghasilkan pasangan <P,X> dengan P adalah pohon biner P yang telah dihapus daun terkirinya dan X adalah nilai yang semula disimpan pada daun terkiri P yang dihapus } DelDaun : PohonBiner tidak kosong, elemen PohonBiner { DelDaun(P,X) dengan X adalah salah satu daun P, menghasilkan sebuah pohon tanpa X } MakeListDaun : PohonBiner List of elemen { MakeListDaun(P): Jika P adalah pohon kosong, maka menghasilkan list kosong. Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua daun pohon P. } MakeListPreOrder : PohonBiner List of elemen { MakeListPreOrder(P) : Jika P adalah pohon kosong, maka menghasilkan list kosong. } { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua node pohon P dengan urutan preorder. } MakeListPostOrder : PohonBiner List of elemen { MakeListPostOrder(P) : Jika P adalah pohon kosong, maka menghasilkan list kosong. } { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua node pohon P dengan urutan postorder. } MakeListInOrder : PohonBiner List of elemen { MakeListInOrder(P) : } { Jika P adalah pohon kosong, maka menghasilkan list kosong. } { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua node pohon P dengan urutan inorder. } MakeListLevel : PohonBiner, integer List of elemen { MakeListLevel(P,N) : } { Jika P adalah pohon kosong, maka menghasilkan list kosong. } { Jika P bukan pohon kosong: menghasilkan list yang elemennya adalah semua node pohon P yang levelnya = N. } { 0 < N <= kedalaman (depth) dari PohonBiner P. }
IF2030_modulpraktikum_bagFungsional.doc/8/26/2012
Halaman 12 dari 13