Minggu, 16 Maret 2014

coding matrik tugas Take home prakt algo I

public class matriks {
   public static void main(String[] args) {
int a , b, c ;
String baris, kolom, menu ;

menu = JOptionPane.showInputDialog(null,"Menu Pilihan Operasi :\n"
+ "1. penjumlahan Matriks \n"
+ "2. pengurangan Matriks \n"
+ "3. perkalian Matriks \n"
+ "4. Invers Matriks\n"
+ "5. Determinan \n");

c = Integer.parseInt(menu);
int A[][]= new int [3][3];
int B[][]= new int [3][3];
int C[][]= new int [3][3];
int D[][]= new int [3][3];

int[][]jumlahMatriks = new int[3][3];
int[][]kurangMatriks= new int[3][3];
int[][]kaliMatriks = new int [3][3];
//a = baris = 2, b = kolom = 2
//input matriks A
//i = baris pertama
// j= baris k2
System.out.println("Matriks A");
for(int i=0;i<3;i++){
System.out.print(" | ");
for(int j=0;j<3;j++){
A[i][j]=Integer.parseInt(JOptionPane.showInputDialog(null,"Input Matrik A"+"Baris Ke-"+(i+1)+" Kolom Ke-"+(j+1)));
System.out.print(" "+A[i][j]+" ");
}
System.out.println(" | ");
}

//input matriks B
System.out.println("Matriks B");
for(int i=0;i<3;i++){
System.out.print(" | ");
for(int j=0;j<3;j++){
B[i][j]=Integer.parseInt(JOptionPane.showInputDialog(null,"Input Matrik B"+"Baris Ke-"+(i+1)+" Kolom Ke-"+(j+1)));
System.out.print(" "+B[i][j]+" ");
}
System.out.println(" | ");
}
//tampil jumlahMatrix
if (c == 1) {
int matrikhasil[][] = new int[3][3];
penjumlahan( A,B,matrikhasil);
show(matrikhasil);
}
else if(c==2){
int matrikhasil[][]= new int [3][3];
pengurangan (A, B, matrikhasil);
show (matrikhasil);
}
else if (c==3){
int matrikshasil[][]= new int [3][3];
perkalian (A, B, matrikshasil);
show (matrikshasil);
}
else if (c==4){
int matrikhasil[][] = new int [3][3];
invers (A, B, matrikhasil);
System.out.println();
}
else if(c==5){
int matrikhasil[][] = new int [3][3];
determinan (A, B, matrikhasil);

}}
public static void penjumlahan(int A[][], int B[][], int C[][]){
for(int i=0; i<A.length; i++){
for(int j=0; j<A[0].length; j++){
C[i][j] = A[i][j] + B[i][j];
}
}
}public static void show(int C[][]){
System.out.println("Hasil matrik");
for(int i=0; i<C.length; i++){
System.out.print("|");
for(int j=0; j<C[0].length; j++){

System.out.print(" " + C[i][j] + " ");
}
System.out.println("|");
}

}

public static void pengurangan(int A[][], int B[][], int C[][]) {
for (int i= 0 ; i<A.length; i++){
for (int j=0; j<A[0].length; j++){
C[i][j] = A[i][j] - B[i][j];
}
}

}

public static void perkalian(int A[][], int B[][], int C[][]) {
for (int i= 0; i<A.length; i++){
for (int j=0; j<A[0].length; j++){
C[i][j] = A[i][j] * B[i][j];
}
}

}

public static void invers(int[][] A, int[][] B, int[][] matrikhasil) {
float detA=(A[0][0]*A[1][1]*A[2][2])+
(A[0][1]*A[1][2]*A[2][0])+
(A[0][2]*A[1][0]*A[2][1]);
float detB=(A[0][1]*A[1][0]*A[2][2])+
(A[0][0]*A[1][2]*A[2][1])+
(A[0][2]*A[1][1]*A[2][0]);
float detA1= detA - detB;
System.out.println("invers matriks A");

System.out.println("|"+(A[1][1]*A[2][2]-A[1][2]*A[2][1])+"  "+(A[0][2]*A[2][1]-A[0][1]*A[2][2])+"  "+(A[0][1]*A[1][2]-A[0][2]*A[1][1])+"|");
System.out.println("|"+(A[1][2]*A[2][0]-A[1][0]*A[2][2])+"  "+(A[0][0]*A[2][2]-A[0][2]*A[2][0])+"  "+(A[0][2]*A[1][0]-A[0][0]*A[1][2])+"|");
System.out.println("|"+(A[2][0]*A[2][1]-A[1][1]*A[2][0])+"  "+(A[0][1]*A[2][0]-A[0][0]*A[2][1])+"  "+(A[0][0]*A[1][1]-A[0][1]*A[1][0])+"|");

float detA2=(B[0][0]*B[1][1]*B[2][2])+
(B[0][1]*B[1][2]*B[2][0])+
(B[0][2]*B[1][0]*B[2][1]);
float detB2=(B[0][1]*B[1][0]*B[2][2])+
(A[0][0]*A[1][2]*A[2][1])+
(A[0][2]*A[1][1]*A[2][0]);
float detB1= detA2 - detB2;
System.out.println("invers matriks B ");
System.out.println("|"+(B[1][1]*B[2][2]-B[1][2]*B[2][1])+"  "+(B[0][2]*B[2][1]-B[0][1]*B[2][2])+"  "+(B[0][1]*B[1][2]-B[0][2]*B[1][1])+"|");
System.out.println("|"+(B[1][2]*B[2][0]-B[1][0]*B[2][2])+"  "+(B[0][0]*B[2][2]-B[0][2]*B[2][0])+"  "+(B[0][2]*B[1][0]-B[0][0]*B[1][2])+"|");
System.out.println("|"+(B[2][0]*B[2][1]-B[1][1]*B[2][0])+"  "+(B[0][1]*B[2][0]-B[0][0]*B[2][1])+"  "+(B[0][0]*B[1][1]-B[0][1]*B[1][0])+"|");

}

private static void determinan(int[][] A, int[][] B, int[][] matrikhasil) {
float detA=(A[0][0]*A[1][1]*A[2][2])+
(A[0][1]*A[1][2]*A[2][0])+
(A[0][2]*A[1][0]*A[2][1]);
float detB=(A[0][1]*A[1][0]*A[2][2])+
(A[0][0]*A[1][2]*A[2][1])+
(A[0][2]*A[1][1]*A[2][0]);
float determinanA = detA - detB;
System.out.println(determinanA);

float deta=(B[0][0]*B[1][1]*B[2][2])+
(B[0][1]*B[1][2]*B[2][0])+
(B[0][2]*B[1][0]*B[2][1]);
float detb=(B[0][1]*B[1][0]*B[2][2])+
(B[0][0]*B[1][2]*B[2][1])+
(B[0][2]*B[1][1]*B[2][0]);
float determinanB = deta - detb;
System.out.println(determinanB);

}

}
  
  

Tidak ada komentar:

Posting Komentar