RSS
Tidak ada Yang Tidak Mungkin Untuk Orang Yang Mau Berusaha
Text Select Onion Kun

Senin, 26 Maret 2012

Pemprograman Berbasis Objek : Menentukan Matriks Invers Suatu Bilangan


import java.io.*;
class invers
{
public static void main (String [] args) throws Exception
{
BufferedReader input = new BufferedReader(new InputStreamReader (System.in));
float temp;
float tump;
System.out.println("ordo matriks = 2*2");
float [][] matrika =new float [2][2];
System.out.println("masukkan elemen matriksnya:");
for (int i=0;i<2;i++)
{
for (int j=0;j<2;j++)
{
System.out.print("elemen ["+(i+1)+","+(j+1)+"]-");
matrika[i][j]=Float.parseFloat(input.readLine());
}
}
for (int i=0;i<2;i++)
{
System.out.print("|");
for (int j=0;j<2;j++)
{
System.out.print(matrika[i][j]+ " ");
}
System.out.println("|");
}
float dtr = (matrika[0][0]*matrika[1][1])-(matrika[1][0]*matrika[0][1]);
System.out.println("determinannya="+dtr);
temp=matrika[0][0];
tump=matrika[0][1]
matrika[0][0]=matrika[1][1];
matrika[1][1]=temp;
matrika[0][1]=matrika[1][0]*-1;
matrika[1][0]=tump*-1;
System.out.println("matrik inversnya: ");
for (int i=0;i<2;i++)
{
System.out.print("|");
for (int j=0;j<2;j++)

{
System.out.print(matrika[i][j]/dtr+ " ");
}
System.out.println("|");
}
}
}

LOGIKA PROGRAM



import java.io.*;
class invers






Pada Statemen ini kita akan  melakukan proses  import ke dalam  program inputan bufferreader,
Dengan mendeklarasikan sebuah class bernama invers.

BufferedReader input = new BufferedReader(new InputStreamReader (System.in));
float temp;
float tump;
System.out.println("ordo matriks = 2*2");
float [][] matrika =new float [2][2];
System.out.println("masukkan elemen matriksnya:");

Kemudian pendklarasian sebuah variable input yang menyatakan sebuah program inputan baru dalam bufferreader. Lalu mencetak ordo matriks =2*2. Kemudian pendeklarasian array  baru dalam ukuran 2 dimensi bernama matrika dan bertipe data float. Kemudian mencetak masukkan elemen matriksnya.


for (int i=0;i<2;i++)
{
      for (int j=0;j<2;j++)      {      System.out.print("elemen ["+(i+1)+","+(j+1)+"]-");      matrika[i][j]=Float.parseFloat(input.readLine());      }      } 

Pada statemen ini dapat dikatakan bahwa ini menggunakan metoda looping dimana
Untuk nilai integer i=0 dan i kurang dari 2 maka i akan mengalami proses pengulangan bertahap tahap
Untuk nilai integer j=0 dan j kurang dari 2 maka j akan mengalami proses pengulangan bertahap tahap
 Dan akan mencetak  “elemen (nilai integer i akan ditambah 1 begitu juga dengan j)-

 for (int i=0;i<2;i++)
{
System.out.print("|");
for (int j=0;j<2;j++)
{
System.out.print(matrika[i][j]+ " ");
}
System.out.println("|");
}


Kemudian pada statement ini program akan mencetak elemen elemen matriks baris ke i dan kolom ke j yang telah di input sebelumnnya dalam bentuk matriks sesungguhnya. dimana i akan di looping hingga nilai nya > dari 2. Dan di dalam looping i terdapat looping dan berakhir dengan nilai j>2.

float dtr = (matrika[0][0]*matrika[1][1])-(matrika[1][0]*matrika[0][1]);
 



pada statement ini program akan menghitung determinan dari matriks yang kita telah buat.
System.out.println("determinannya="+dtr);
temp=matrika[0][0];
tump=matrika[0][1]
matrika[0][0]=matrika[1][1];
matrika[1][1]=temp;
matrika[0][1]=matrika[1][0]*-1;
matrika[1][0]=tump*-1;
System.out.println("matrik inversnya: ");
for (int i=0;i<2;i++)
{
System.out.print("|");
for (int j=0;j<2;j++)

{
System.out.print(matrika[i][j]/dtr+ " ");
}
System.out.println("|");
}
}
}
 






















Lalu pada bagian akhir ini program akan menukar letak matriks matriks agar bisa menjadi invers. Yaitu nilai matriks baris ke 0 dan kolom ke 0 ditukar denga baris ke 1 dan nilai matriks kolom ke 1 dan baris ke 1 dan kolom ke 1 ditukar dengan baris ke 0 serta kolom ke 0. Lalu nilai matriks baris ke 0 dan kolom ke 1 ditukar dengan baris ke 1 dan kolom ke 0 lalu dikali minus 1 dan begitu pula dengan nilai matriks baris ke 1 dan kolom ke 0 ditukar dengan baris ke 0 dan kolom ke 1 dan dikali minus 1. Lalu setelah itu setiap elemen matriks yang telah ditukar dibagi dengan nilai determinan yang telah kita cari.
Lalu program selesai dan mencetak outputnya.

Catatan :
temp=matrika[0][0];
tump=matrika[0][1]

temp dan tumb digunakan untuk menyimpan sebuah variable lalu akan dipanggil lagi (hanya sebagai variable pengganti untuk memudahkan user) .
OUTPUT


















Tidak ada komentar:

Posting Komentar