May 20

Ditentukan 2 buah titik, dimana salah satu titik merupakan titik pusat dari sebuah lingkaran dan mempunyai jari – jari. Bagaimana memastikan titik yang lain apakah titik tersebut berada di dalam lingkaran, atau berada pada garis lingkaran, atau berada diluar lingkaran ?

Jawab :

Persamaan lingkaran dengan pusat di A (a, b) dan berjari-jari r, yaitu :

persamaan lingkaran

Jika diketahui suatu titik B (x1 , y1), maka untuk memastikan apakah titik B berada di dalam lingkaran, atau berada pada garis lingkaran, atau berada diluar lingkaran dapat dibuat pseudocode seperti berikut :

Pseudocode :

Input x1 , y1
Input a , b
Input r

if (x1-a)^2 + (y1-b)^2 < r^2
print “Titik berada didalam lingkaran”
else if (x1-a)^2 + (y1-b)^2 = r^2
print “Titik berada pada garis lingkaran”
else
print “Titik berada diluar lingkaran”

 

Code generator :

01. mov x1,R0
02. mov a, R1
03. sub R1,R0
04. mul R0,R0
05. mov y1, R2
06. mov b, R3
07. sub R3,R2
08. mul R2,R2
09. add R2,R0
10. mov r,R4
11. mul R4,R4
12. lt R4,R0
13. jmpf R0,(16)
14. prt “Titik berada didalam lingkaran”
15. jmp ,(21)
16. eq R4,R0
17. jmpf R0,(20)
18. prt “Titik berada pada garis lingkaran”
19. jmp ,(21)
20. prt “Titik berada diluar lingkarang”
21. …

 

http://binus.ac.id

Apr 01
  1. S -> S + A | S – A | A + S | A – S | B * A

B -> aB | B(a + B) | B * a | a(a + B) | b

A -> a

Jawab :

S-> AS’’ | B*AS’

S’ -> +AS’ | -AS’ | ε

S’’ -> +SS’ | -SS’

B -> aB’’ | bB’

B’ -> (a+B)B’ | *aB’ | ε

B’’ -> BB’ | (a+B)B’

A -> a

First (S) -> {a,b }
First (S’) -> { +,-, ε }
First (S’’) -> {+,- }
First (B) -> {a,b }
First (B’) -> { (,*,ε }
First (B’’) -> { a,b,(}
First (A) -> {a }
Follow (S) -> { $}
Follow (S’) -> { $}
Follow (V) -> {:}
Follow (V’) -> {:}
Follow (E) -> { then,$,),]}
Follow (E’) -> { then,$,),]}
Follow (T) -> { +,-}
Follow (T’) -> { +,- }
Follow (F) -> { *,/ }
a b + * ( $
S S-> AS’’| B*AS’ S->B*AS’
S’ S’ -> +AS’ S’ -> -AS’ S’ -> ε
S’’ S’’ -> +SS’ S’’ -> -SS’
B B -> aB’’ B -> bB’’
B’ B’-> ε B’->*aB’| ε B’ -> (a+B)B’ | ε
B’’ B’’ -> BB’ B’’ -> BB’ B’’->(a+B)B’
A A -> a

2.      2. S -> if E then S | if E then S else S | V := E

V -> id | id [E]

E -> E + T | E – T | T

T -> T * F | T / F | F

F -> V | (E) | const

S -> if E then S S’ | V := E

S’ -> ε | else S

V -> idV’

V’ -> ε | [E]

E -> TE’

E’ -> +TE’ | -TE’ | ε

T -> FT’

T ‘-> *FT’ | /FT’ | ε

F -> V | (E) | const

First (S) -> {if,id }
First (S’) -> { ε,else }
First (V) -> { id}
First (V’) -> { ε ,[}
First (E) -> { id,(,const}
First (E’) -> { +,-, ε }
First (T) -> { id,(,const}
First (T’) -> { *,/, ε }
First (F) -> { id,(,const}
Follow (S) -> { $}
Follow (S’) -> { $}
Follow (V) -> {:}
Follow (V’) -> {:}
Follow (E) -> { then,$,),]}
Follow (E’) -> { then,$,),]}
Follow (T) -> { +,-}
Follow (T’) -> { +,- }
Follow (F) -> { *,/ }

 

 

 

 

 

 

3.S-> a = A

A -> aA’ | bA’

A’ -> +AA’ | ε

First (S)                 : { a }

First (A)                 : { a, b }

First (A’)               : { +, ε }

Follow (S)            : { $ }

Follow (A)           : { $, + }

Follow (A’)          : { $, + }

a

b

+

$

S

S-> a = A

A

A -> aA’

A -> bA’

A’

A’ -> +AA’ | ε

A’ -> ε

4.Diketahui grammar:

be -> bt be

be’ -> or bt be’

be’ -> ε

bt-> bf bt’

bt -> and bf bt’

bt’-> ε

bf -> not bf

bf -> (be)

bf -> true

bf -> false

Inputan: not (true or false) and true and true and false not (false) true

First (be)              = {not , ( , true , false}

First (be’)            = {or , ε}

First (bt)               = {not , ( , true , false}

First (bt’)             = {and , ε}

First (bf)               = {not , ( , true , false}

Follow (be)         = {$ , )}

Follow (be’)        = {$ , )}

Follow (bt)          = {or , $ , )}

Follow (bt’)         = {or , $ , )}

Follow (bf)          = {or, $, ) , and}

or

not

(

)

true

false

and

$

be be->bt be’ be->bt be’ be->bt be’ be->bt be’
be’ be’->or bt be’ be’->ε be’->ε
bt bt->bf bt’ bt->bf bt’ bt->bf bt’ bt->bf bt’
bt’ bt’->ε bt’->ε bt’-> and bf bt’ bt’->ε
bf bf->not bf bf-> (be) bf->true bf->false

No

Stack

Input

Output

1. be $ not (true or false) and true and true and false not (false) true be -> bt be’
2. bt be’ $ not (true or false) and true and true and false not (false) true bt -> bf bt’
3. bf bt’ be’ $ not (true or false) and true and true and false not (false) true bf -> not bf
4. not bf bt’ be’ $ not (true or false) and true and true and false not (false) true pop not
5. bf bt’ be’ $ (true or false) and true and true and false not (false) true bf -> (be)
6. (be) bt’ be’ $ (true or false) and true and true and false not (false) true pop (
7. be) bt’ be’ $ true or false) and true and true and false not (false) true be -> bt be’
8. bt be’) bt’ be’ $ true or false) and true and true and false not (false) true bt -> bf bt’
9. bf bt’ be’) bt’ be’ $ true or false) and true and true and false not (false) true bf ->true
10. true bt’ be’) bt’ be’ $ true or false) and true and true and false not (false) true pop true
11 bt’ be’) bt’ be’ $ or false) and true and true and false not (false) true bt’ -> ε
12 be’) bt’ be’ $ or false) and true and true and false not (false) true be’ ->or bt be’
13. or bt be’ ) bt’ be’ $ or false) and true and true and false not (false) true pop or
14. bt be’) bt’ be’ $ false) and true and true and false not (false) true bt ->bf bt’
15. bf bt’ be’) bt’ be’ $ false) and true and true and false not (false) true bf -> false
16. false bt’ be’) bt’ be’ $ false) and true and true and false not (false) true pop false
17. bt’ be’) bt’ be’ $ ) and true and true and false not (false) true bt’ -> ε
18. be’) bt’ be’ $ ) and true and true and false not (false) true be’ -> ε
19. ) bt’ be’ $ ) and true and true and false not (false) true pop )
20. bt’ be’ $ and true and true and false not (false) true bt’-> and bf bt’
21. and bf bt’ be’ $ and true and true and false not (false) true pop and
22. bf bt’ be’ $ true and true and false not (false) true bf -> true
23. true bt’ be’ $ true and true and false not (false) true pop true
24. bt’ be’ $ and true and false not (false) true bt’ -> and bf bt’
25. and bf bt’ be’ $ and true and false not (false) true pop and
26. bf bt’ be’ $ true and false not (false) true bf -> true
27. true bt’ be’ $ true and false not (false) true pop true
28. bt’ be’ $ and false not (false) true bt’ -> and bf bt’
29. and bf bt’ be’ $ and false not (false) true pop and
30. bf bt’ be’ $ false not (false) true bf -> false
31. false bt’ be’ $ false not (false) true pop false
32. bt’ be’ $ not (false) true ditolak

http://binus.ac.id

Mar 24

Christine Sotanto
1501172701
06PFT

1. Perusahaan tambang yang sedang melakukan eksplorasi melakukan penelitian kandungan emas disuatu tempat. Berdasarkan hasil penelitian, kandungan emas mengikuti jalur lintasan y=f(x) = ex . Menurut data satelit, untuk mendapatkan kandungan emas terbanyak ada di posisi x=0.4. Jika posisi pengeboran tersebut dihitung menggunakan pendekatan deret Taylor sampai dengan 4 suku pertama, hitunglah ( pembulatan 4 angka dibelakang koma),Hitunglah :
a. Nilai f(0.5) untuk fungsi f(x) = ex

no1a
b. Galat mutlak dan relatifnya.
Nilai e = 2,7183

no1b

 

2. Seorang pembuat boneka ingin membuat dua macam boneka yaitu boneka A dan boneka B. Kedua boneka tersebut dibuat dengan menggunakan dua macam bahan yaitu potongan kain dan kancing. Boneka A membutuhkan 10 potongan kain dan 6 kancing, sedangkan boneka B membutuhkan 8 potongan kain dan 8 kancing. Permasalahannya adalah berapa buah boneka A dan boneka B yang dapat dibuat dari 82 potongan kain dan 62 kancing ? Selesaikan dengan metode gauss-Jourdan!

no2

3. Carilah nilai x1, x2 dan x3 dari sistem persamaan linear berikut dengan menggunakan metode dekomposisi LU.

no3

http://binus.ac.id

Mar 24

Pada post ini, saya akan membahas mengenai cara menggunakan keyword dalam CREATE TABLE di SQL. Saya mencoba menggunakan keyword “JOIN” dalam pembuatan table di SQL.

Jika query ini dijalankan, maka akan muncul pesan error. Hal ini dikarenakan keyword seperti JOIN, UPDATE, DELETE, dll yang merupakan keyword yang sudah direserved oleh SQL, sehingga tidak dapat dipakai lagi untuk nama table.

error1

Cara mengatasi hal ini, yaitu dengan menggunakan tanda kurung [], “”, _ pada nama table. Berikut contohnya :

1. Menggunakan tanda kurung []

ok1

2. Menggunakan tanda petik “”

ok3

3. Menggunakan tanda garis bawah _

ok2

http://binus.ac.id

Mar 24

Berikut adalah ERD Instragam yang kami buat:
ERD

http://binus.ac.id

Mar 11

Top-Down Parsing adalah sebuah metode dimana metode ini melakukan penelusuran dari root ke leaf atau dari simbol awal ke terminal.

Metode Top-Down Parsing ini meliputi :

  1. Backtrack/ Backup      : Brute Force
  2. No Backtrack                : Recursive Descent Parser

Di dalam pencarian TopDown Parsing, terdapat beberapa permasalah yang mungkin akan ditemui :

  1. Left Recursion
  2. Left Recursive

Left Recursion

Sebuah grammar dikatakan bersifat left recursion apabila grammartersebut mengandung suatu nonterminal dan derivasinya.

Contoh : A → Aα

Metode Top-Down Parsing tidak bisa menangani grammar yang mengandung left recursive, sehingga left recursive perlu dihilangkan. Di bawah ini akan dijelaskan bagaimana cara menghilangkan left recursive.

Contoh 2 : A → Aα|β

Maka, A → βA’

A’ → αA’ | ε

Mengapa dalam metode Top Down Parsing tidak boleh terdapat left recursive?

Karena left recursive menyebabkan parsing mengalami looping tak hingga.

Left Factoring

Grammar dapat dikatakan left factoring apabila terdapat produksi yang berbentuk seperti di bawah ini :

Contoh 3 :

rumus

Grammar tersebut diubah menjadi :

A → αA’

A’ → β1 |β2

Adanya left factoring ini menyebabkan grammar menjadi ambigu karena tidak jelas yang mana dari dua produksi alternatif yang bisa digunakan untuk memperluas nonterminal A. Dari contoh soal di atas, kita tidak tahu mau menelusuri   A ke a atau ke b.

Demikian penjelasan singkat mengenai Top-Down Parsing 🙂

http://binus.ac.id

Mar 10

Session 1 – Web Database Environment

Data dan Informasi

Data adalah fakta dasar, dapat berupa gambar, suara, huruf, angka, bahasa, ataupun citra. Sedangkan informasi adalah beberapa kombinasi dari fakta.

System software menyediakan fungsi-fungsi kebutuhan komputer, yang bisa dibagi menjadi sistem operasi atau sistem pendukung dan berfungsi untuk menjalankan komputer beserta hardware. Selain itu ada juga application software yang dibangun untuk sebuah tujuan/keperluan yang bisa berupa program khusus yang digunakan untuk berinteraksi dengan teknologi komputasi.

Functional Requirement merupakan penjelasan tentang layanan yang perlu disediakan oleh sistem, bagaimana sistem menerima dan mengolah masukan, dan bagaimana sistem mengatasi situasi-situasi tertentu. Selain itu kadang-kadang juga secara jelas menentukan apa yang tidak dikerjakan oleh sistem. Functional requirement menggambarkan system requirement secara detil seperti.

Non-functional Requirement berisi batasan-batasan pada pelayanan atau fungsi yang disediakan oleh sistem. Termasuk di dalamnya adalah batasan waktu, batasan proses pembangunan, standar-standar tertentu.

Business rule adalah informasi yang digunakan organisasi, restriksi mengenai bagaimana informasi digunakan. Business constraint berfokus pada batasan bagamaina data bisa diubah.

information system development lifecycle

Gambar 1 information system development lifecycle
 

Database, database schema, database instance and meta-data

Database adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Skema database adalah struktur atau format dari database, dijelaskan dalam bahasa formal yang didukung oleh sistem manajemen database. Instance adalah struktur proses dan memory yang menjalankan sistem database (DBMS, database management system).  Metadata adalah data tentang data atau informasi tentang informasi.

Gambar 2 instance dalam arsitektur database
 

Data and document model

Model data adalah suatu cara untuk menjelaskan tentang data-data yang tersimpan dalam basis data dan bagaimana hubungan antar data tersebut untuk para pemakai secara logik. Tujuan model data adalah untuk menyajikan data agar mudah dimodifikasi dan dimengerti.

Secara garis besar model data dikelompokkan dalam tiga macam yaitu :

1. Model data berbasis obyek (object based data model)

2. Model data berbasis record (record based data model)

3. Model data fisik (physical based data model)

Model dokumen mendefinisikan struktur dari kelas dokumen. Tujuan model dokumen memungkinkan penulis untuk menulis dokumen dokumen yang bisa dibagi, karena software yang memahami model dokumen yang diberikan dapat menampilkan dokumen yang ditulis menggunakan model dokumen.

Teknologi Web database

dbms

Konten web statis dan dinamis

Web statis adalah website yang mana pengguna tidak bisa mengubah konten dari web tersebut secara langsung menggunakan browser. Sedangkan dalam web dinamis, interaksi yang terjadi antara pengguna dan server sangat kompleks. Seseorang bisa mengubah konten dari halaman tertentu dengan menggunakan browser.

Database Terdistribusi

DistrributedDB

Gambar 3 database terdistribusi

CentralizedDB

Gambar 4 database terpusat
 
 

Session 2 – Network, Database and Web Technology

Jaringan merupakan sekumpulan komputer yang dapat saling berhubungan antara satu dengan yang lainnya dengan menggunakan media komunikasi, sehingga dapat saling berbagi data, informasi, program, dan perangkat keras (printer, harddisk, webcam, dsb).

Tujuan jaringan adalah untuk memudahkan pengguna komputer untuk saling berbagi sumber daya yang terdapat di jaringan seperti printer, file/data, dan sebagainya.

Internet merupakan komunikasi jaringan komunikasi global yang menghubungkan seluruh komputer di dunia meskipun beda sistem operasi dan mesin. Intranet adalah sebuah jaringan koputer berbasis protokol TCP/IP seperti internet, hanya saja digunakan dalam internal perusahaan atau kantor dengan aplikasi berbasis web dan teknologi komunikasi data seperti internet ( bahkan warung internet (warnet) dapat dikategorikan sebagai intranet). Ekstranet adalah jaringan pribadi yang menggunakan protokol internet dan sistem telekomunikasi publik untuk membagi sebagian informasi bisnis atau operasi secara aman kepada penyalur (supplier), penjual (vendor), mitra (partner), pelanggan dan lain-lain.

Client server computing adalah pendekatan umum yang digunakan untuk mengembangkan sistem informasi yang terkomputerisasi.

two-tier-architecture 3tier

Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer. Protokol dapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras. Internet protokol adalah  protokol lapisan jaringan (network layer dalam OSI reference model) atau protokol lapisan internetwork (internetwork layer dalam DARPA Reference Model) yang digunakan oleh protokol TCP/IP untuk melakukan pengalamatan dan routing paket data antar host-host di jaringan komputer berbasis TCP/IP. Alamat IP (Internet Protocol Address atau sering disingkat IP) adalah deretan angka biner antar 32-bit sampai 128-bit yang dipakai sebagai alamat identifikasi untuk tiap komputer host dalam jaringan internet.

DBMS adalah perangkat lunak yang menangani semua pengaksesan database. Mempunyai fasilitas membaut, mengakses, memanipulasi dan memelihara basis data. DCM digunakan untuk menangani komunikasi network untuk DBMS.

DDL atau Data Definition Language adalah kumpulan perintah SQL yang dapat digunakan untuk membuat dan mengubah struktur dan definisi tipe data dari objek-objek database seperti tabel, index, trigger, view, dan lain-lain, seperti drop, create, dll.

DML atau Data Manipulation Language adalah kumpulan perintah SQL yang berhubungan dengan pekerjaan mengolah data di dalam table, seperti select, insert, update, delete.

webserver

Gambar 4 web server
 

Session 3 – Data Models

Data item adalah fakta menarik bagi organisasi yang disimpan dalam database. Literal adalah data aktual yang disimpan dan biasanya berupa angka biner. Value adalah sebuah representasi yang dapat dibaca manusia berupa nilai. Variabel adalah sebuah wadah untuk menyimpan sebuah value, data atau informasi. Operator adalah simbol yang digunakan untuk memanipulasi data, seperti penambahan dan pengurangan ada operator yang menggunakan satu operand ada juga yang menggunakan dua operand. Ekspresi adalah sebuah kombinasi yang valid dari literal, variabel dan operator.

Tipe data adalah suatu hal yang menggambarkan jenis nilai dari suatu obyek data (konstanta atau variabel) yang nantinya akan digunakan untuk menginisialisasi sebuah variabel.

Relational data model adalah sebuah database dalam model ini disusun dalam bentuk tabel dua dimensi yang terdiri dari baris (record) dan kolom (field), pertemuan antara baris dengan kolom disebut item data (data value), tabel-tabel yang ada dihubungkan (relationship) sedemikian rupa menggunakan field-field kunci (Key field) sehingga dapat meminimalkan duplikasi data.

table

Candidate key adalah satu atau beberapa kolom dalam tabel yang bisa mengidentifikasi tiap baris dari tabel tersebut. Primary key adalah salah satu candidate key yang kita nobatkan sebagai kolom unik untuk identifikasi baris dalam tabel. Foreign key adalah primary key dari tabel lainnya yang terdapat di tabel saat ini. Referential Integrity berkaitan erat dengan foreign key. Composite key adalah composite key adalah kunci yang terdiri dari 2 atau lebih atribut yang secara unik mengidentifikasi suatu kejadian entitas. Pada dasarnya Referential Integrity adalah penerapan aturan bahwa untuk setiap foreign key yang terdapat pada suatu tabel, harus ada nilainya di tabel asal kolom tersebut.

Perbedaan tabel dasar dengan tabel turunan.

Tabel dasar adalah tabel dasar yang memiliki instance yang disimpan dalam media penyimpanan persisten. Sedangkan tabel turunan adalah tabel yang diperoleh dari hasil turunan tabel dasar (view) lainnya dan memiliki instance yang tersimpan dalam memori.

http://binus.ac.id

Mar 09

Untuk konversi dari RE (Regular Expression) ke DFA dapat dilakukan dengan menggunakan 2 cara, yaitu:

  1. Dengan menggunakan metode Thomson’s Construction (ɛ-NFA) lalu baru ke DFA
  2. Dengan menggunakan konversi ke tree terlebih dahulu

Berikut adalah contoh untuk konversinya:

RE:  ab(a|b)*ab* | ab(a|b)+ #

  1. Dengan cara ke – 1 :

– Langkah pertama gambarkan ɛ-NFA dari RE tersebut.

e-nfa

– Setelah itu tentukan ɛ-closure untuk mendapatkan state pada DFA, dengan cara sebagai berikut:

S0 = ɛ-closure(0) = {0, 1, 15}

ɛ-closure(move(S0, a)) =  ɛ-closure({2, 16}) = {2, 16} = S1

ɛ-closure(move(S0, b)) =  –

ɛ-closure(move(S1, a)) =  –

ɛ-closure(move(S1, b)) =  ɛ-closure({3, 17}) = {3, 4, 5, 7, 10, 17, 18, 20} = S2

ɛ-closure(move(S2, a)) =  ɛ-closure({6, 11, 19}) = {4, 5, 6, 7, 9, 10, 11, 12, 14, 17, 18, 19, 20, 22, 23} = S3*

ɛ-closure(move(S2, b)) =  ɛ-closure({8, 21}) = {4, 5, 7, 8, 9, 10, 17, 18, 20, 21, 22, 23} = S4*

ɛ-closure(move(S3, a)) =  ɛ-closure({6, 11, 19}) =  S3*

ɛ-closure(move(S3, b)) =  ɛ-closure({8, 13, 21}) =  {4, 5, 7, 8, 9, 10, 12, 13, 14, 17, 18, 20, 21, 22, 23} = S5*

ɛ-closure(move(S4, a)) =  ɛ-closure({6, 11, 19}) =  S3*

ɛ-closure(move(S4, b)) =  ɛ-closure({8, 21}) =  S4*

ɛ-closure(move(S5, a)) =  ɛ-closure({6, 11, 19}) =  S3*

ɛ-closure(move(S5, b)) =  ɛ-closure({8, 13, 21}) =  S5*

– Selanjutnya, gambarkan state DFA tersebut:

dfa

– Selanjutnya DFA tersebut akan di minimalisasikan menjadi minimized DFA dengan cara:

table DFA

Berikut adalah gambar hasil dari Minimized DFA:

minimalisasi dfa

2.  Dengan cara ke- 2:

– Langkah pertama tentukan follow pos dari RE tersebut:

Follow pos 1 = 2

Follow pos 2 = 3, 4, 5

Follow pos 3 = 3, 4, 5

Follow pos 4 = 3, 4, 5

Follow pos 5 = 6

Follow pos 6 = 6, 11

Follow pos 7 = 8

Follow pos 8 = 9, 10

Follow pos 9 = 9, 10, 11

Follow pos 10 = 9, 10, 11

Follow pos 11 = –

– Langkah selanjutnyagambarkan treenya dari RE tersebut untuk menentukan S0:

1979866_830453936969700_2146734339_n

Didapat S0 = {1, 7}

– Selanjutnya buatlah table untuk menentukan dfanya:

a

b

S0

2, 8 = S1

S1

3, 4, 5, 9, 10 = S2

S2

3, 4, 5, 6, 9, 10, 11 = S3*

3, 4, 5, 9, 10, 11 = S4*

S3

3, 4, 5, 6, 9, 10, 11 = S3*

3, 4, 5, 6, 9, 10, 11 = S3*

S4

3, 4, 5, 6, 9, 10, 11 = S3*

3, 4, 5, 9, 10, 11 = S4*

Untuk hasil DFA dari cara ini didapat hasilnya merupakan DFA minimizednya sehingga gambarnya menjadi:

dfa akhir

Sekian penjelasan mengenai konversi RE ke DFA. Semoga bermanfaat untuk Anda :)

http://binus.ac.id

Mar 05

Welcome to Binusian blog.
This is the first post of any blog.binusian.org member blog. Edit or delete it, then start blogging!
Happy Blogging 🙂