Tampilkan postingan dengan label coding java matriks. Tampilkan semua postingan
Tampilkan postingan dengan label coding java matriks. Tampilkan semua postingan

Jumat, 07 Januari 2011

Coding Java "Matriks"

Coding ini juga berbasis GUI, karena tampilan ini akan sperti jendela pada windows...

Selamat mencoba :)


import javax.swing.*;

public class MatrikKali{

public static void main(String[] args){

byte jum1=0, jum2=0, jum3=0, jum4=0;



do{

JOptionPane.showMessageDialog(null,"PROGRAM PERKALIAN MATRIK\nSelamat mencoba program ini ya...!!","Opening",JOptionPane.PLAIN_MESSAGE);

do{

//Validasi jika ordo... matrik tidak valid

if(jum2!=jum3)

JOptionPane.showMessageDialog(null,"Matrik A("+jum1+"x"+jum2+ ") X Matrik B("+jum3+"x"+jum4+") = Ordo matrik tidak valid!!!","Warning", JOptionPane.WARNING_MESSAGE);



//Proses validasi terhadap tipe data inputan dengan penggunaan Exception

try{

String ordo1=JOptionPane.showInputDialog("MATRIK A\nMasukkan ordo matrik(baris) :");

jum1=Byte.parseByte(ordo1);

String ordo2=JOptionPane.showInputDialog("MATRIK A\nMasukkan ordo matrik(kolom) :");

jum2=Byte.parseByte(ordo2);

String ordo3=JOptionPane.showInputDialog("MATRIK B\nMasukkan ordo matrik(baris) :");

jum3=Byte.parseByte(ordo3);

String ordo4=JOptionPane.showInputDialog("MATRIK B\nMasukkan ordo matrik(kolom) :");

jum4=Byte.parseByte(ordo4);

}catch(Exception e){

JOptionPane.showMessageDialog(null,"Tipe data yang Anda input salah!!!","Error",JOptionPane.ERROR_MESSAGE);

System.exit(0);

}



}while(jum2!=jum3);



int[][] matrik1=new int[jum1][jum2];

int[][] matrik2=new int[jum3][jum4];



HitungMatrik hitung=new HitungMatrik(jum1, jum2, jum3, jum4);

JTextArea output=new JTextArea();

hitung.inputMatrikA(matrik1);

hitung.inputMatrikB(matrik2);

hitung.cetakMatrik(matrik1,matrik2);

hitung.cetakHasilKali(matrik1,matrik2);

output.setText(hitung.Tampil());

JOptionPane.showMessageDialog(null,output,"Hasil Perkalian",JOptionPane.INFORMATION_MESSAGE);

}while(JOptionPane.showConfirmDialog(null,"Ingin diulangi lagi?")==JOptionPane.YES_OPTION);

System.exit(0);

}}





class HitungMatrik{



private int i,j,k;

private String tampil;

private byte jum1,jum2,jum3,jum4;



//Konstruktor dengan parameter ordo matrik

HitungMatrik(byte jum1, byte jum2, byte jum3, byte jum4){

this.jum1=jum1;

this.jum2=jum2;

this.jum3=jum3;

this.jum4=jum4;

}



//Method untuk inputan Matrik A

void inputMatrikA(int [][] matrik1){

//input matrik A

for(i=0;i
for(j=0;j
String input=JOptionPane.showInputDialog("Masukkan elemen matrik A ("+jum1+"x"+jum2+") :");

int A=Integer.parseInt(input);

matrik1[i][j]=A;

}

}

}



//Method untuk inputan Matrik B

void inputMatrikB(int [][] matrik2){

//input matrik B

for(i=0;i
for(j=0;j
String input=JOptionPane.showInputDialog("Masukkan elemen matrik B ("+jum3+"x"+jum4+") :");

int B=Integer.parseInt(input);

matrik2[i][j]=B;

}

}

}

//Method untuk mencetak matrik

void cetakMatrik(int [][] matrik1, int [][] matrik2){

//mencetak matrik A

tampil="\nMatrik A ordo ("+jum1+"x"+jum2+")\n";

for(i=0;i
for(j=0;j
tampil+=" "+matrik1[i][j]+" ";

tampil+="\n";

}

//mencetak matrik B

tampil+="\nMatrik B ordo ("+jum3+"x"+jum4+")\n";

for(i=0;i
for(j=0;j
tampil+=" "+matrik2[i][j]+" ";

tampil+="\n";

}

}



//Method untuk mencetak hasil perkalian Matrik A dan Matrik B

void cetakHasilKali(int [][] matrik1, int [][] matrik2){

//mencetak hasil perkalian matrik

int[][] hasil=new int[matrik1.length][matrik2[0].length];

tampil+="\nHasil matrik A("+jum1+"x"+jum2+") x matrik B("+jum3+"x"+jum4+")\n";

for(i=0;i
for(j=0;j
hasil[i][j]=0;

for(k=0;k
hasil[i][j]+=matrik1[i][k]*matrik2[k][j];

}

}

for(i=0;i
for(j=0;j
tampil+=" "+hasil[i][j]+" ";

tampil+="\n";

}

}



//Method yang mengembalikan nilai variabel "tampil" bertipe data string untuk output

String Tampil(){

String author="\n Galih Mahrandy\n";

return(tampil+=author);

}}

Jangan lupa coment-nya yah :)