25 September 2014

Sifat-sifat Operasi Matrik - Pertemuan 3

SIFAT-SIFAT OPERASI MATRIKS

Kali ini, mudah-mudahan pembaca bisa lebih mudah memahami tulisan saya.  Kalau masih belum jelas, bisa tanya pada rumput tetangga, mungkin lebih tahu......xixiixixixiix

I. Sifat Penjumlahan

 Diberikan matriks A, B, dan C yang penjumlahannya terdefinisi.
  1. A + B = B + A
  2. A + (B + C) = (A + B) + C
  3. Ada matriks nol, O, sedemikian hingga A + O = A
      Matriks O ini disebut dengan matriks identitas terhadap penjumlahan.
  4. Untuk setiap matriks A, ada matriks -A sedemikian hingga A + (-A) = O. Matriks –A ini disebut dengan matriks invers terhadap penjumlahan

Contoh :
A+B=B+A

A + (B + C) = (A + B) + C

Matrik A ditambah dg Matrik –A = 0

II. Sifat Perkalian
Diberikan matriks A, B, dan C yang perkaliannya terdefinisi.
 1. (AB)C = A(BC)
 2. A(B + C) = AB + AC
 3. (A + B)C = AC + BC
 4. Ada matriks I sedemikian hingga AI = IA = A.
Matriks I disebut matriks identitas terhadap perkalian.

Contoh :
(AB)C = A(BC)

III. Sifat Perkalian Skalar & Matriks

Jika r dan s adalah bilangan real, dan A dan B adalah matriks, maka
 1. r(sA) = (rs)A
 2. (r + s)A = rA + sA
 3. r(A + B) = rA + rB
 4. A(rB) = r(AB) = (rA)B
Contoh :
r(sA) = (rs)A

IV. Sifat transpose

Jika r adalah skalar, dan A dan B adalah matriks, maka
 1. (At)t = A
 2. (A + B)t = At + Bt
 3. (AB)t = BtAt
 4. (rA)t = rAt
Suatu matriks A = [aij] dikatakan simetris jika At = A
Contoh :
(At)t = A

Perpangkatan pada Matriks
Misal A adalah matriks b.s. dan p adalah bil.bulat positif, maka :

Jika A adalah matriks berukuran n x n, maka
A0 = In
Sifat Perpangkatan :
Misal p dan q adalah bilangan bulat non negatif, dan A dan B adalah matriks, maka
1. ApAq = Ap+q
2. (Ap)q = Apq
3. (AB)p = ApBp jika dan hanya jika AB = BA

Demikian ulasan sedikit dari saya, semoga bisa bermanfaat.

Materi Presentasi bisa didownload pada link di bawah :

Materi Matrik Lanjutan - Pertemuan 3

18 September 2014

Bahasa Reguler - Pertemuan 3 - Teknik Kompilasi



Bahasa regular adalah penyusun ekspresi reguler (ER)
Ekspresi reguler terdiri dari kombinasi simbol-simbol atomik menggunakan 3 operasi yaitu :

  • Katenasi,
  • Alternasi, dan
  • Repetisi / closure

Pada kasus scanner, simbol-simbol atomik adalah karakter-karakter di dalam program sumber, dua buah ekspresi regular adalah ekuivalen jika keduanya menyatakan bahasa yang sama


Katenasi /konkatenasi atau sequencing disajikan dengan physical adjacency
  • e.g. ekspresi regular ‘ ’ bentuk penyajian sederhana (diasumsikan sebagai definisi yang jelas dari letter dan digit) komposisi terurut dari letter diikuti dengan digit
  •  “<” dan “>” digunakan untuk mengidentifikasi simbol-simbol yang merepresentasikan simbol-simbol spesifik (menggunakan ekspresi regular)
  • Kita bisa menggunakan “::=” (ekivalensi) untuk menggabungkan ekspresi regular yang didefinisikan dengan dan  

Alternasi membolehkan pilihan dari beberapa pilihan dan biasanya disajikan dengan operator ‘|’

  • E.g. ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
  • contoh yang menggunakan juga operator ekivalensi

Bentuk tulisan cepat tertentu juga biasanya digunakan dengan alternasi (khususnya ellips)
  • E.g. ::= a | b | … | z | A | B | … | Z
  • Can use the ellipses (“…”) when a sequence is well defined
 
Terakhir, Repetisi membolehkan ekspresi dari kontruksi yang diulang beberapa kali

Terdapat 2 operator yang digunakan yaitu superscript ‘+’ dan superscript ‘*’ 
  • E.g. ::= +
  • this implies a word consists of one or more letters (* would imply zero or more letters and a word must have at least one letter so we use +) 
Selengkapnya bisa dilihat pada tautan di bawah ini :

Bahasa Reguler - Pertemuan 3 


Notasi dan Operasi Dasar Matriks - Pertemuan 2

Matrik adalah susunan segiempat yang terdiri atas bilangan–bilangan real yang tersusun atas baris dan kolom.
Menurut Suryadi dan Machmudi (1984), matriks adalah himpunan skalar (bilangan riil atau kompleks) yang disusun / dijajarkan secara empat persegi panjang (menurut baris-baris dan kolom-kolom)
Dalam http://id.wikipedia.org/, dalam matematika, matriks adalah kumpulan bilangan, simbol, atau ekspresi, berbentuk persegi panjang yang disusun menurut baris dan kolom. Bilangan-bilangan yang terdapat di suatu matriks disebut dengan elemen atau anggota matriks. Contoh matriks dengan 2 baris dan 3 kolom yaitu : 

\begin{bmatrix}1 & 9 & -13 \\20 & 5 & -6 \end{bmatrix}.  


Pemanfaatan matriks misalnya dalam menemukan solusi sistem persamaan linear. Penerapan lainnya adalah dalam transformasi linear, yaitu bentuk umum dari fungsi linear, misalnya rotasi dalam 3 dimensi.
Matriks seperti halnya variabel biasa dapat dimanipulasi, seperti dikalikan, dijumlah, dikurangkan dan didekomposisikan. Dengan representasi matriks, perhitungan dapat dilakukan dengan lebih terstruktur.
A =
\begin{bmatrix}
a_{11} & a_{12} & a_{13} \\
a_{21} & a_{22} & a_{23} \\
a_{31} & a_{32} & a_{33} \\
\end{bmatrix}
\! 

Notasi Matrik 
Matriks pada umumnya ditulis dalam tanda kurung siku/kurung kurawal :

 \mathbf{A} = 
 \begin{bmatrix}
 a_{11} & a_{12} & \cdots & a_{1n} \\
 a_{21} & a_{22} & \cdots & a_{2n} \\
 \vdots & \vdots & \ddots & \vdots \\
 a_{m1} & a_{m2} & \cdots & a_{mn}
 \end{bmatrix}.
 

Operasi Dasar

Penjumlahan dan Pengurangan Matrik
Penjumlahan dan pengurangan matriks hanya dapat dilakukan apabila kedua matriks memiliki ukuran atau tipe yang sama. Elemen-elemen yang dijumlahkan atau dikurangi adalah elemen yang posisi atau letaknya sama.
a_{ij} \pm b_{ij} = c_{ij}\!
atau dalam representasi dekoratfinya


\begin{bmatrix}
(a_{11} \pm b_{11}) & (a_{12} \pm b_{12}) & (a_{13} \pm b_{13}) \\
(a_{21} \pm b_{21}) & (a_{22} \pm b_{22}) & (a_{23} \pm b_{23}) \\
\end{bmatrix}
=
\begin{bmatrix}
c_{11} & c_{12} & c_{13} \\
c_{21} & c_{22} & c_{23} \\
\end{bmatrix}
\! 

Perkalian Skalar

Matriks dapat dikalikan dengan sebuah skalar.

\lambda\cdot A := (\lambda\cdot a_{ij})_{i=1, \ldots , m; \ j=1, \ldots , n}

Contoh perhitungan :

5 \cdot
  \begin{pmatrix}
    1 & -3 & 2 \\
    1 &  2 & 7
  \end{pmatrix}
  =
  \begin{pmatrix}
   5 \cdot 1 & 5 \cdot (-3) & 5 \cdot 2 \\
   5 \cdot 1 & 5 \cdot   2  & 5 \cdot 7
  \end{pmatrix}
  =
  \begin{pmatrix}
    5 & -15 & 10 \\
    5 & 10  & 35
  \end{pmatrix}
 

Perkalian Matrik
Matriks dapat dikalikan, dengan cara tiap baris dikalikan dengan tiap kolom, lalu dijumlahkan pada baris yang sama ,
 c_{ij}=\sum_{k=1}^m a_{ik}\cdot b_{kj} 
Contoh perhitungan :


  \begin{pmatrix}
    1 & 2 & 3 \\
    4 & 5 & 6 \\
  \end{pmatrix}
  \cdot
  \begin{pmatrix}
    6 & -1 \\
    3 & 2 \\
    0 & -3
  \end{pmatrix}
  =
  \begin{pmatrix}
     1 \cdot 6  +  2 \cdot 3  +  3 \cdot 0 &
     1 \cdot (-1) +  2 \cdot 2 +  3 \cdot (-3) \\
     4 \cdot 6  +  5 \cdot 3  +  6 \cdot 0 &
     4 \cdot (-1) +  5 \cdot 2 +  6 \cdot (-3) \\
  \end{pmatrix}
  =
  \begin{pmatrix}
    12 & -6 \\
    39 & -12
  \end{pmatrix}
 
Demikian contoh ulasan sedikit.  Sedangkan materi presentasi bisa didownload pada link di bawah ini.

  1. Matriks - Pertemuan 2 - Aljabar Linear - 4Shared
  2. Matriks - Pertemuan 2 - Aljabar Linear - Slideshare 

12 September 2014

Contoh Coding membuat Garis

Buat mahasiswa MK Grafika Komputer kelas Adan B, mohon dicoba ini,
Jangan lupa PR-nya !!!!!
Program inti untuk membuat garis terletak pada tulisan warna biru.
Apabila garisnya lebih dari 1, maka kita tinggal meng copy tulisan warna biru menjadi sejumlah garis yang diinginkan.  Tapi ingat, nama variabelnya harus berbeda !!!!!!

Listing Programnya sabagai berikut :

package penggunaanawt;

import java.awt.*;
import java.awt.event.*;
public class Titik extends Frame implements ActionListener{
    int x = 100;
    int y = 100;
public static void main(String[] args) {
    Frame frame = new Titik();
    frame.setSize(640, 480);
    frame.setVisible(true);
}
public Titik() {
setTitle("AWT Titik");
// create menu
    MenuBar mb = new MenuBar();
    setMenuBar(mb);
    Menu menu = new Menu("File");
    mb.add(menu);
    MenuItem mi = new MenuItem("Exit");
    mi.addActionListener(this);
    menu.add(mi);
// end program when window is closed
    WindowListener l = new WindowAdapter()  {
    public void windowClosing(WindowEvent ev) {
    System.exit(0);
    }
    };
this.addWindowListener(l);
// mouse event handler
MouseListener mouseListener = new MouseAdapter() {
public void mouseClicked(MouseEvent ev) {
    x = ev.getX();
    y = ev.getY();
    repaint();
}
};
addMouseListener(mouseListener);
}

public void paint(Graphics g) {

g.setColor(Color.blue);

int jumlahtitik = 1;
    while (jumlahtitik <=100){
        g.fillRect(100+jumlahtitik, 100+jumlahtitik, 1, 1); // membuat titik dengan format (x,y,lebar x pixel, lebar y pixel)
        jumlahtitik++; }

}
public void actionPerformed(ActionEvent ev) {
String command = ev.getActionCommand();
if ("Exit".equals(command)) {
System.exit(0);
}
}
}



Tengkyu......... ini tidak termasuk dalam listing....

10 September 2014

Konsep dan Notasi Bahasa-Teknik Kompilasi - Materi 2

Untuk dapat menyelami proses kompilasi diperlukan waktu yang lebih guna mengamati perilaku kompilasi.
Terdapat bahasa-bahasa pemrograman yang berbeda macam dan bahkan platform, untuk itu perlu ada keseragaman.

Konsep dan Notasi Bahasa
Teori Bahasa
Bahasa adalah kumpulan kalimat. Kalimat adalah rangkaian kata. Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi.
Contoh : Si Kucing kecil menendang bola besar ----------->     Bhs Indonesia
               The little cat  kicks a big ball                 ----------->     Bhs Inggris
               for i := start to finish do A[i] := B[i]*sin(i*pi/16.0) -->  Bhs Pascal
Dalam bahasa pemrograman, kalimat dikenal sebagai ekspresi, dan kata sebagai token. Kata terdiri atas beberapa karakter. Kelompok karakter yang membentuk sebuah token dinamakam lexeme untuk token tersebut. Setiap token yang dihasilkan, disimpan dalam tabel simbol.
Derivasi adalah sebuah proses dimana suatu himpunan produksi akan diturunkan / dipilah-pilah dengan melakukan sedertan produksi sehingga membentuk untai terminal.

Grammar dan bahasa

Pengertian dasar
  1. Setiap anggota alfabet, dinamakan sebagai simbol terminal atau token.
  2. Himpunan simbol terminal dinyatakan sebagai VT, sedangkan himpunan simbol non terminal dinyatakan sebagai VN.
  3. Simbol-simbol berikut adalah simbol terminal :
  • Huruf kecil awal alfabet, misal x, y, z.
  • Simbol operator, misal +, -, dan x
  • Simbol tanda baca, misal (,), dan ;
  • String yang tercetak tebal, misal, if, then, dan else
     4.  Simbol-simbol berikut adalah simbol non terminal :
  • Huruf besar awal alfabet, misal X, Y, Z.
  • Huruf S sebagai simbol awal.
  • String yang tercetak miring, misal expr dan stmt.
     5.    Huruf besar akhir alfabet melambangkan simbol terminal atau non terminal, misal X, Y, Z

6. Huruf kecil akhir alfabet melambangkan string yang tersusun atas symbol-simbol terminal, misalnya : x, y, z.

7. Sebuah produksi dilambangkan sebagai a®b, artinya : dalam sebuah derivasi dapat dilakukan penggantian simbol a dengan simbol b.
8. Simbol a dalam produksi berbentuk a®b disebut ruas kiri produksi sedangkan simbol b  disebut ruas kanan produksi.
9. Pengertian terminal berasal dari kata terminate (berakhir), maksudnya derivasi  berakhir jika sentensial yang dihasilkan adalah sebuah kalimat (yang tersusun atas  simbol-simbol terminal itu).

10.  Pengertian nonterminal berasal dari kata not terminate (belum/tidak berakhir), maksudnya derivasi belum/ tidak berakhir jika sentensial  yang dihasilkan mengandung simbol non terminal.

11. String adalah deretan terbatas (finite) simbol-simbol. Sebagai contoh, jika a, b dan c adalah tiga buah simbol maka abcb adalah sebuah string yang dibangun dari ketiga symbol tersebut.
12. Jika adalah sebuah string maka panjang string dinyatakan sebagai Ã¯wï dan didefinisikan sebagai cacahan (banyaknya) simbol yang menyusun string tersebut.  Sebagai contoh, jika abcb maka Ã¯wï= 4.

13. String hampa adalah sebuah string dengan nol buah symbol.  String hampa dinyatakan dengan simbol e (atau ^) sehingga ïeï= 0.  String hampa dapat dipandang sebagai simbol hampa karena keduanya tersusun dari nol buah simbol.

Grammar dan Klasifikasi Chomsky
Grammar G didefinisikan sebagai pasangan 4 tupel : VN, VT, S, dan Q, dan dituliskan sebagai G(VN, VT, S, Q), dimana :
VT           : himpunan  simbol-simbol  terminal  (atau  himpunan  token -token, atau alfabet)
VN           : himpunan simbol-simbol non terminal
S ÃŽ V     : simbol awal (atau simbol start)
Q             : himpunan produksi

Aturan produksi dinyatakan sebagai a ® b, artinya a menurunkan b 
Berdasarkan komposisi bentuk ruas kiri dan ruas kanan produksinya (a ® b), Noam Chomsky mengklasifikasikan 4 tipe grammar :
  1. Grammar tipe ke-0 : Unrestricted Grammar (UG)
Ciri : a, b ÃŽ (VT½VN)*, ïaï> 0
  1. Grammar tipe ke-1 : Context Sensitive Grammar (CSG)
Ciri : a, b ÃŽ (VT½VN)*, 0 < ïaï £ ïbï
  1. Grammar tipe ke-2 : Context Free Grammar (CFG)
Ciri : a ÃŽ V, b ÃŽ (VT½VN)*
  1. Grammar tipe ke-3 : Regular Grammar (RG)
Ciri : a ÃŽ V, b ÃŽ {V, VTVN} atau a ÃŽ V, b ÃŽ {VT, VNVT}
               
Ciri-ciri RG sering dituliskan sebagai :
a ÃŽ V, b ÃŽ {a, bC} atau a ÃŽ V, b ÃŽ {a, Bc}



Kelas Grammar

Tabel 1. Mesin pengenal Bahasa
Kelas Bahasa
Mesin Pengenal Bahasa
Unrestricted Grammar (UG)
Mesin Turing (Turing Machine), TM
Context Sensitive Grammar (CSG)
Linear Bounded Automaton, LBA
Context Free Gammar (CFG)
Automata Pushdown (Pushdown Automata), PDA
Regular Grammar, RG
Automata Hingga (Finite Automata)

 
Gambar 1. Hirarki Chomsky
Notasi BNF
Aturan-aturan produksi dapat dinyatakan dalam bentuk BNF ( Backus Naur Form)
Beberapa simbol yang dipakai dalam notasi BNF dapat dilihat pada Tabel 2.
Tabel 2. Simbol-simbol BNF

::=
Identik dengan simbol à pada aturan produksi
|
Menyatakan “atau”
<  >
Mengapit simbol variabel / non terminal
{  }
Pengulangan 0 sampai n kali

Contoh, terdapat aturan produksi sebagai berikut :
                E à T | T+E | T-E, T à a
Notasi BNF :
                E ::= | + | - , T ::= a

Diagram Sintaks
Diagram sintaks merupakan alat bantu dalam pembentukan parser / analisis sintaks. Notasi yang terdapat dalam diagram sintaks :
             Empat persegi panjang melambangkan simbol variabel / non terminal.
             Bulatan melambangkan simbol terminal

Misal, terdapat aturan produksi :
        Tà F*T | F/T | F
Diagram sintaksnya adalah sebagai berikut :
 
Gambar 2. Diagram Produksi

Selengkapnya dapat dilihat pada presentasi di link berikut :


09 September 2014

Persamaan Garis Saling Tegak Lurus

Pertanyaan :

Menjawab pertanyaan saudara di atas, mudah-mudahan saya bisa memberikan solusi yang tepat buat saudara.

Berarti titik B dan C adalah sebuah garis lurus (apabila dari titik B s/d titik C ditarik garis), sehingga titik A kalau ditarik pasti akan melalui garis BC dan tegak lurus padanya.
Misalnya : titik B=(2,3) dan C=(8,7) serta titik A=(7,4), maka gambarnya adalah sebagai berikut :

Gambar 1. Garis BC dan sebuah garis tegak lurus BC melalui A

Maka, langkah-langkahnya adalah sebagai berikut :

1.  Mencari persamaan garis BC terlebih dahulu


Dengan melakukan penyilangan diperoleh persamaan garis BC sebagai berikut :

(y-3)*6 = 4*(x-2)
6y-18 = 4x -8
6y – 4x – 10 = 0

2. Mencari gradient garis m1
6y - 4x -10 = 0
6y = 4x +10  Ã  dibagi dengan 6 untuk memperoleh y saja (untuk membulatkan angka, setiap suku harus dikali atau dibagi dengan penyebutnya), menjadi :
y = 4/6 x +10/6, sehingga gradiennya adalah m=  4/6
          
            3. Syarat dari 2 garis tegak lurus adalah m1.m2 = -1
m1.m2 = -1
4/6.m2=-1
m2=-1/4/6 è -6/4
            
            4.  Persamaan garis yang melalui titik A(7,4) dan tegak lurus pada garis BC adalah :
y-y1 = m2(x-x2)
y-4=-6/4(x-7)
y-4=-6/4x+42/4
y=-6/4x+42/4+4
y=-6/4x+58/4 Ã  pindahkan  -6/4x+58/4 ke sisi kiri, sehingga menjadi 
y+(6/4)x-58/4=0

05 September 2014

Materi Komputer Grafik

Bagi mahasiswa STIKOM Artha Buana Kupang yang mengambil kuliah Komputer Grafik, berikut saya sertakan materi Komputer Grafik sebagai bahan bacaan.

Untuk mendapatkannya saudara bisa download dari link dibawah.

Materi Komputer Grafik - STIKOM Artha Buana

03 September 2014

Vektor - Aljabar Linear

Vektor dalam matematika dan fisika adalah obyek geometri yang memiliki besar dan arah. Vektor jika digambar dilambangkan dengan tanda panah (→). Besar vektor proporsional dengan panjang panah dan arahnya bertepatan dengan arah panah. Vektor dapat melambangkan perpindahan dari titik A ke B.
Vektor sering ditandai sebagai
\overrightarrow{AB}.
Vektor berperan penting dalam fisika: posisi, kecepatan dan percepatan obyek yang bergerak dan gaya dideskripsikan sebagai vektor.

Panjang Vektor
Untuk mencari panjang sebuah vektor dalam ruang euklidian tiga dimensi, dapat digunakan cara berikut:

\left\|\mathbf{R}\right\|=\sqrt{a_1^2+a_2^2+a_3^2}

Dua buah vektor dikatakan sama apabila keduanya memiliki panjang dan arah yang sama seperti terlihat pada contoh pada Gambar 1.

Gambar 1. Vektor yang sama

Dua Buah Vektor disebut sejajar (paralel) apabila garis yang merepresentasikan kedua buah vektor sejajar.
Negasi sebuah vektor dapat dilambangkan seperti pada rumus berikut :
 v ® –v 
secara geometrik dapat digambarkan seperti pada Gambar 2.
Gambar 2. Negasi Vektor

Penjumlahan dua vektor: w = u + v   secara geometrik dapat digambarkan seperti pada Gambar 3.
Gambar 3. Penjumlahan Vektor

Demikian juga halnya dengan pengurangan vektor, Selisih dua vektor: w = uv  sama dengan w = u + (–v)
Gambar 4. Pengurangan Vektor

Sebuah vektor dikenali besarnya lewat (u,v), yaitu besarnya perubahan (delta) searah sumbu x dan besarnya perubahan (delta) terhadap sumbu y.  Delta x adalah pengurangan dari x2-x1 dan delta y = y2-y1.  Misalnya Titik A (8,3) dan titik B (5,3), maka delta x = 5-8 = -3 dan delta y = 3-3 = 0.
Sebagai ilustrasi bisa dibayangkan gambar 5.
Gambar 5. Vektor U


Pada ruang 2 dimensi penjumlah 2 vektor seperti pada Gambar 3, dapat dijelaskan sebagai berikut :
u = (u1, u2); v = (v1, v2); w = (w1, w2)
   w = (w1, w2) = (u1, u2) + (v1, v2)
       = (u1 + v1, u2 + v2)
     w1 = u1 + v1
     w2 = u2 + v2
Sebagai contoh bisa dilihat pada grafik Gambar 6.
Gambar 6. Contoh Penjumlahan Vektor


Demikian seterusnya.  
Untuk lebih lengkap dan detailnya menunggu episode berikutnya.
Sebagai bahan bacaan, saya sertakan presentasi Vektor pada link di bawah ini.
  1. Materi 41 - Vektor 
  2. Materi 42 - Vektor
Terima kasih, matur suwun, thank you........