Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras a mauris placerat, ornare lectus sit amet, blandit dui. Sed consectetur nunc vel libero malesuada, ac porta sapien suscipit. Praesent pretium mattis sapien, a molestie sapien ultrices quis. Praesent condimentum sem turpis, at elementum lacus dapibus eu. Phasellus ultricies semper dui nec lacinia. Aenean eget est posuere, tristique ex eget, tincidunt eros. Vivamus ullamcorper venenatis accumsan. Pellentesque dolor diam, consequat ut tempor quis, dapibus sit amet urna. Phasellus nulla ante, tincidunt eget erat nec, convallis lacinia ipsum. Nam convallis orci dui, ac accumsan mauris facilisis eget. Vestibulum sed dui non orci sagittis blandit in eget enim. Donec eget tellus enim. Etiam augue nulla, elementum vitae sapien a, cursus aliquam ante. Proin vitae ligula pharetra, volutpat nisi id, maximus enim. Mauris fringilla justo sed tincidunt sagittis. Sed odio erat, placerat eu massa quis, tincidunt pharetra nibh.

Sunday, May 30, 2010

Determinan matriks

Kali ini saya akan menuliskan bagaimana cara membuat program sederhana untuk menghitung determinan pada java, ini merupakan lanjutan dari tulisan saya sebelumnya. Yang akan kita hitung pada program kali ini adalah derterminan matriks berordo 3 x 3, menggunakan metode sarrus. untuk menginputnyam kita cukup menggunakan 1 matrik berordo 3 x 3, kemudian elemen dari matriks akan di proses dengan cara sarrus.

berikut ini adalah Scriptnya:

import java.io.*;
class determinan
{

public static void main (String[]args) throws IOException
{
BufferedReader input = new BufferedReader ( new InputStreamReader (System.in));

 System.out.println("determinan matriks 3x3");
             int matrik[][]=new int [3][3];
             for (int i=0;i<3;i++)
             {
                 for (int j=0;j<3;j++)
                 {
                     System.out.println("masukan elemen matriks["+i+"]["+j+"]: ");
                     matrik[i][j]=Integer.parseInt(input.readLine());
                    }
                }
                 for (int i=0;i<3;i++)
             {
                 System.out.print("| ");
                 for (int j=0;j<3;j++)
                 {
                     System.out.print(matrik[i][j]);
                    }
                    System.out.println(" |");
                }
                int ab=matrik[0][0]*matrik[1][1]*matrik[2][2];
                int bb=matrik[0][1]*matrik[1][2]*matrik[2][0];
                int cb=matrik[0][2]*matrik[1][0]*matrik[2][1];
                int aa=matrik[2][0]*matrik[1][1]*matrik[0][2];
                int ba=matrik[2][1]*matrik[1][2]*matrik[0][0];
                int ca=matrik[2][2]*matrik[1][0]*matrik[0][1];
                int det=ab+bb+cb-aa-ba-ca;
                System.out.println("Determinan = "+det);
                
                break;
                
                case 3:
                System.out.println("Invers");
                float mat[][]=new float [2][2];
                for(int i=0;i<2;i++)
                {
                    for(int j=0;j<2;j++)
                    {
                        System.out.print("masukan elemen matriks["+i+"]["+j+"]: ");
                        mat[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(mat[i][j]);
                    }
                    System.out.println(" |");
                }
                System.out.println();
                float d=(mat[0][0]*mat[1][1])-(mat[1][0]*mat[0][1]);
                System.out.println("determinan="+d);
                float temp;
                temp=mat[0][0];
                mat[0][0]=mat[1][1];
                mat[1][1]=temp;
                mat[0][1]=mat[0][1]*-1;
                mat[1][0]=mat[1][0]*-1;
                for (int i=0;i<2;i++)
                {
                    System.out.print("| ");
                    for(int j=0;j<2;j++)
                    {
                        System.out.print(mat[i][j]/d);
                    }
                    System.out.println(" |");
                }
          }

3 comments :

  1. output na kok gak ada ????

    ReplyDelete
  2. determinan ini masih manual, krn untuk menghitung determinannya masih menggunakan indeks... ini kalao dicoba untuk ordo 10x10 pasti ga bisa... :)

    ReplyDelete