State Diagram ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

3.3 State Diagram

State diagram diagram keadaan merupakan suatu model matematis untuk merepresentasikan suatu ekspresi reguler yang diterima oleh suatu bahasa. Dari suatu masukan string, dapat diperiksa apakah string tersebut diterima oleh suatu ekspresi reguler atau tidak. Suatu masukan diterima apabila dengan merunut tiap karakter string dari awal sampai akhir, berakhir pada state akhir. Pada Gambar 3.11 diperlihatkan state diagram bilangan desimal. Contoh masukan string yang diterima oleh state diagram bilangan desimal, diantaranya 123 dan +4567. Gambar 3.11 State Diagram Bilangan Desimal Gambar 3.12 memodelkan ekspresi reguler bilangan bulat biner ke dalam state diagram. Contoh masukan yang diterima oleh state diagram bilangan biner, diantaranya “101011”B. Dengan merunut karakter demi karakter dari masukan tersebut, maka dapat dicapai state akhir, yaitu bin. q2 q10 B, b +, -, Ø q1 ‘’ q7 0, 1 ‘’ q13 q14 ‘’ q11 0, 1 ‘’ B, b q5 bin Ø Ø ‘ q6 ‘ 0, 1 ‘ q12 ‘ 0, 1 q3 0, 1 q8 0, 1 q4 0, 1 q9 0, 1 Gambar 3.12 State Diagram Bilangan Biner Jefri Umar : Analisis Perancangan Perangkat Lunak Ide Integrated Development Environment Fortran G77, 2009. q2 q10 O, o +, -, Ø q1 ‘’ q7 0..7 ‘’ q13 q14 ‘’ q11 0..7 ‘’ O, o q5 oct Ø Ø ‘ q6 ‘ 0..7 ‘ q12 ‘ 0..7 q3 0..7 q8 0..7 q4 0..7 q9 0..7 Gambar 3.13 State Diagram Bilangan Oktal Ekspresi reguler bilangan bulat oktal dimodelkan pada Gambar 3.13. Contoh masukan yang tidak diterima oleh state diagram bilangan oktal tersebut adalah “1234’O. Dengan merunut tiap karakter pada string masukan tersebut, state terakhir oct tidak dapat dicapai. Karakter masukan hanya dapat dirunut sampai karakter kelima karakter ‘4’, dan state terakhir yang dapat dicapai adalah state q7. Gambar 3.14 State Diagram Bilangan Heksadesimal Jefri Umar : Analisis Perancangan Perangkat Lunak Ide Integrated Development Environment Fortran G77, 2009. Gambar 3.14 mengilustrasikan state diagram untuk ekspresi reguler bilangan bulat heksadesimal. Contoh masukan yang tidak diterima oleh state diagram tersebut adalah ‘123abc’XZ. Dengan merunut tiap karakter pada string masukan, state akhir dapat dicapai pada karakter kesembilan karakter ‘X’. Tetapi, string masukan tersebut tidak dapat diterima karena terdapat karakter yang tidak dapat dirunut lagi. Gambar 3.15 State Diagram Bilangan Pecahan Gambar 3.15 mengilustrasikan state diagram untuk ekspresi reguler bilangan pecahan. Contoh string masukan yang dapat diterima state diagram tersebut adalah +12.34e56. Urutan state yang dilalui: {q1, q2, q3, q3, q5, q5, q5, q6, q7, q8, q8, float}. Karena, state terakhir yang dilalui adalah float dan tiap karakter dirunut sampai karakter terakhir, maka string masukan tersebut diterima. Gambar 3.16 State Diagram Untaian Karakter Gambar 3.16 mengilustrasikan state diagram untuk ekspresi reguler untaian karakter. Contoh masukan yang dapat diterima adalah “sedang belajar”. Jefri Umar : Analisis Perancangan Perangkat Lunak Ide Integrated Development Environment Fortran G77, 2009.

3.4 Perancangan Antarmuka