Sabtu, 18 Januari 2014

LA MATIF PERT 4 (Fungsi Invers)

import java.util.*;

public class FungsiInvers {
       int[] HimpunanA;
       int[] HimpunanB;
       int[] HimpunanRelasi;
       int[] HimpunanAsal;
       int jmlHimpunanA, jmlHimpunanB, jmlRelasi;
       boolean satu2 ;
 
  Scanner input = new Scanner(System.in);

       public static void main(String args[]){
             FungsiInvers aaa = new FungsiInvers();
             aaa.inputAnggota();
             aaa.cetakHimpunan();
             aaa.inputRelasi();
             aaa.cekFungsi();
             aaa.cetakRelasi();
       }
       public void inputAnggota(){
              System.out.print("Masukkan Jumlah Himpunan A = ");
              jmlHimpunanA =Integer.parseInt(input.next());

              HimpunanA=new int[jmlHimpunanA];
              for(int i = 0;i<= (jmlHimpunanA-1);i++){
                      System.out.print("Himpunan A yang ke "+ (i+1)+" : ");
                      HimpunanA[i]=Integer.parseInt(input.next());
              }

              System.out.print("Masukkan Jumlah Himpunan B = ");
              jmlHimpunanB = Integer.parseInt(input.next());
              HimpunanB = new int[jmlHimpunanB];
              for(int i = 0;i<= (jmlHimpunanB-1);i++){
                      System.out.print("Himpunan B yang ke "+ (i+1) +" : ");
                      HimpunanB[i]=Integer.parseInt(input.next());
              }

       }
       public void cetakHimpunan(){
              System.out.print("Anggota Himpunan A = { ");
              for (int i = 0;i<=(jmlHimpunanA-1);i++){
                  System.out.print(HimpunanA[i]+ " ");
              }
              System.out.println("} ");

              System.out.print("Anggota Himpunan B = { ");
              for (int i = 0;i<=(jmlHimpunanB-1);i++){
                  System.out.print(HimpunanB[i]+ " ");
              }
              System.out.println("} ");
       }
       public void inputRelasi(){
              int jmlRelasiMaks = jmlHimpunanA * jmlHimpunanB;
              System.out.println("Relasi Maksimal Adalah "+jmlRelasiMaks);
              System.out.print(" ");

              do{
                  System.out.print("Masukan Jumlah Relasi yang Terjadi : ");
                  jmlRelasi = Integer.parseInt(input.next());
              }while(jmlRelasi>jmlRelasiMaks);

              HimpunanRelasi = new int[jmlRelasi];
              HimpunanAsal = new int[jmlRelasi];
              System.out.println("Masukkan Relasi yang Terjadi :");
              for(int i=0; i<=(jmlRelasi-1);i++){

                 int[] temp=new int[jmlRelasi];
                 int[] temp2 = new int[jmlRelasi];
                 boolean SamaA = false;
                 boolean SamaB = false;

                 System.out.println("Relasi ke "+(i+1)+" : ");
                 do{
                    System.out.print("Masukkan Asal A : ");
                    temp[i]=Integer.parseInt(input.next());
                    System.out.print("Masukkan Tujuan B: ");
                    temp2[i]=Integer.parseInt(input.next());

                    for (int j= 0; j<=(jmlHimpunanA-1);j++){
                        if(temp[i]==HimpunanA[j]){
                           SamaA=true;
                        }
                    }

                    for (int k= 0; k<=jmlHimpunanB-1;k++){
                        if(temp2[i]==HimpunanB[k]){
                           SamaB=true;
                        }
                    }
                    if(SamaA==false || SamaB==false){
                        System.out.println("Anggota Himpunan Tidak terdapat dihimpunan A atau B");
                    }

                   if(SamaA==true && SamaB==true){
                        HimpunanRelasi[i]=temp2[i];
                        HimpunanAsal[i]=temp[i];
                    }

                 }while(SamaA==false || SamaB==false);
                 }
        }
        public void cekFungsi(){
               satu2 = false;
               int jumlahAnggota = 0;
               boolean adaSama = false;

               for(int i =0;i<=(jmlHimpunanA-1);i++){
                       for(int j=0;j<=(jmlRelasi-1);j++){

                            if(HimpunanA[i]==HimpunanAsal[j]){
                                jumlahAnggota++;
                            }
                       }
               }


               for(int i = 0;i<=(jmlRelasi-1);i++){
                       for(int j=i+1;j<=(jmlRelasi-1);j++){
                        if(HimpunanAsal[i]==HimpunanAsal[j]){
                           adaSama=true;
                           }
                       }
               }

               if(jumlahAnggota==jmlHimpunanA && adaSama == false){
                System.out.println("Relasi yang diInput adalah Fungsi");
                    jumlahAnggota = 0;
                    for(int i =0;i<=(jmlHimpunanB-1);i++){
                       for(int j=0;j<=(jmlRelasi-1);j++){

                            if(HimpunanB[i]==HimpunanRelasi[j]){
                                jumlahAnggota++;
                            }
                       }
                    }

                    for(int i = 0;i<=(jmlRelasi-1);i++){
                       for(int j=i+1;j<=(jmlRelasi-1);j++){
                        if(HimpunanRelasi[i]==HimpunanRelasi[j]){
                           adaSama=true;
                           }
                       }
                    }
                     if(jumlahAnggota==jmlHimpunanB && adaSama == false){
                            System.out.println("Fungsi Yang Diinput Adalah Fungsi satu-satu");
                            satu2= true;
                     }

               }else {
                System.out.println("Relasi yang di input Bukan Fungsi hanya relasi biasa"+ jumlahAnggota);
               }
        }

        public void cetakRelasi(){
               System.out.print("Daerah Domain = { ");
              for(int i=0;i<=jmlHimpunanA-1;i++){
                System.out.print(HimpunanA[i]+" ");
              }
              System.out.println("}");

              System.out.print("Daerah Kodomain { ");
              for(int i=0;i<=jmlHimpunanB-1;i++){
                System.out.print(HimpunanB[i]+ " ");
              }
              System.out.println("}");
              System.out.print("Daerah range adalah : { ");
              for(int i= 0;i<= jmlRelasi-1;i++){
                      boolean adaSama=false;
                      for (int j = i+1;j<=jmlRelasi-1;j++){
                          if(HimpunanRelasi[i]==HimpunanRelasi[j])
                           adaSama=true;
                      }
                   if(adaSama==false)System.out.print(HimpunanRelasi[i]+" ");
              }
              System.out.println("}");

              if(satu2){
                  System.out.println("Fungsi Inversnya Adalah : ");
                  System.out.print("Daerah Domain = { ");
                  for(int i=0;i<=jmlHimpunanA-1;i++){
                          System.out.print(HimpunanB[i]+" ");
                  }
                  System.out.println("}");
                  System.out.print("Daerah Kodomain { ");
                  for(int i=0;i<=jmlHimpunanB-1;i++){
                          System.out.print(HimpunanA[i]+ " ");
                  }
                  System.out.println("}");
                  System.out.print("Daerah range adalah : { ");
                  for(int i= 0;i<= jmlRelasi-1;i++){
                      boolean adaSama=false;
                      for (int j = i+1;j<=jmlRelasi-1;j++){
                          if(HimpunanAsal[i]==HimpunanAsal[j])
                           adaSama=true;
                      }
                   if(adaSama==false)System.out.print(HimpunanAsal[i]+" ");
                   }
                   System.out.println("}");
              }
        }

}

LA MATIF PERT 3 (FUNGSI)

import java.util.Scanner;

public class Fungsii {
       int[] HimpunanA;
       int[] HimpunanB;
       int[] HimpunanRelasi;
       int[] HimpunanAsal;
       int jmlHimpunanA, jmlHimpunanB, jmlRelasi;
  Scanner input=new Scanner(System.in);

       public static void main(String args[]){
             Fungsi madhun = new Fungsi();
             madhun.inputAnggota();
             madhun.cetakHimpunan();
             madhun.inputRelasi();
             madhun.cekFungsi();
             madhun.cetakRelasi();
       }
       public void inputAnggota(){
              System.out.print("Masukkan Jumlah Himpunan A = ");
              jmlHimpunanA =input.nextInt();
             
              HimpunanA=new int[jmlHimpunanA];
              for(int i = 0;i<= (jmlHimpunanA-1);i++){
                      System.out.print("Himpunan A yang ke "+ (i+1)+" : ");
                      HimpunanA[i]=input.nextInt();
              }
             

              System.out.print("Masukkan Jumlah Himpunan B = ");
              jmlHimpunanB = input.nextInt();
              HimpunanB = new int[jmlHimpunanB];
              for(int i = 0;i<= (jmlHimpunanB-1);i++){
                      System.out.print("Himpunan B yang ke "+ (i+1) +" : ");
                      HimpunanB[i]=input.nextInt();
              }

       }
       public void cetakHimpunan(){
              System.out.print("Anggota Himpunan A = { ");
              for (int i = 0;i<=(jmlHimpunanA-1);i++){
                  System.out.print(HimpunanA[i]+ " ");
              }
              System.out.println("} ");
             
              System.out.print("Anggota Himpunan B = { ");
              for (int i = 0;i<=(jmlHimpunanB-1);i++){
                  System.out.print(HimpunanB[i]+ " ");
              }
              System.out.println("} ");
       }
       public void inputRelasi(){
              int jmlRelasiMaks = jmlHimpunanA * jmlHimpunanB;
              System.out.println("Relasi Maksimal Adalah "+jmlRelasiMaks);
              System.out.print(" ");

              do{
                  System.out.print("Masukan Jumlah Relasi yang Terjadi : ");
                  jmlRelasi = input.nextInt();
              }while(jmlRelasi>jmlRelasiMaks);
           
              HimpunanRelasi = new int[jmlRelasi];
              HimpunanAsal = new int[jmlRelasi];
              System.out.println("Masukkan Relasi yang Terjadi :");
              for(int i=0; i<=(jmlRelasi-1);i++){

                 int[] temp=new int[jmlRelasi];
                 int[] temp2 = new int[jmlRelasi];
                 boolean SamaA = false;
                 boolean SamaB = false;

                 System.out.println("Relasi ke "+(i+1)+" : ");
                 do{
                    System.out.print("Masukkan Asal A : ");
                    temp[i]=input.nextInt();
                    System.out.print("Masukkan Tujuan B: ");
                    temp2[i]=input.nextInt();

                    for (int j= 0; j<=(jmlHimpunanA-1);j++){
                        if(temp[i]==HimpunanA[j]){
                           SamaA=true;
                        }
                    }

                    for (int k= 0; k<=jmlHimpunanB-1;k++){
                        if(temp2[i]==HimpunanB[k]){
                           SamaB=true;
                        }
                    }
                    if(SamaA==false || SamaB==false){
                        System.out.println("Anggota Himpunan Tidak terdapat dihimpunan A atau B");
                    }

                   if(SamaA==true && SamaB==true){
                        HimpunanRelasi[i]=temp2[i];
                        HimpunanAsal[i]=temp[i];
                    }

                 }while(SamaA==false || SamaB==false);
                 }
        }
        public void cekFungsi(){
             
               int jumlahAnggota = 0;
               boolean adaSama = false;

               for(int i =0;i<=(jmlHimpunanA-1);i++){
                       for(int j=0;j<=(jmlRelasi-1);j++){

                            if(HimpunanA[i]==HimpunanAsal[j]){
                                jumlahAnggota++;
                            }
                       }
               }
             

               for(int i = 0;i<=(jmlRelasi-1);i++){
                       for(int j=i+1;j<=(jmlRelasi-1);j++){
                        if(HimpunanAsal[i]==HimpunanAsal[j]){
                           adaSama=true;
                           }
                       }
               }
             
               if(jumlahAnggota==jmlHimpunanA && adaSama == false){
                System.out.println("Relasi yang diInput adalah Fungsi");
               }else {
                System.out.println("Relasi yang di input Bukan Fungsi hanya relasi biasa");
               }
        }

        public void cetakRelasi(){
         System.out.print("Daerah Domain = { ");
              for(int i=0;i<=jmlHimpunanA-1;i++){
                System.out.print(HimpunanA[i]+" ");
              }
              System.out.println("}");

              System.out.print("Daerah Kodomain { ");
              for(int i=0;i<=jmlHimpunanB-1;i++){
                System.out.print(HimpunanB[i]+ " ");
              }
              System.out.println("}");
              System.out.print("Daerah range adalah : { ");
              for(int i= 0;i<= jmlRelasi-1;i++){
                      boolean adaSama=false;
                      for (int j = i+1;j<=jmlRelasi-1;j++){
                          if(HimpunanRelasi[i]==HimpunanRelasi[j])
                           adaSama=true;
                      }
                   if(adaSama==false)System.out.print(HimpunanRelasi[i]+" ");
              }
              System.out.println("}");
        }

}

LA MATIF PERT 2 (Relasi)

import java.util.*;
public class Relasi{
       int[] himpunanA= new int[100];
       int[] himpunanB= new int[100];
       int[] himpunanHasil = new int[100];
       int jumlahAnggotaA;
       int jumlahAnggotaB;
       int jumlahRelasi;
 
  Scanner input = new Scanner(System.in);

       public static void main(String args[]){
           Relasi A = new Relasi();
           A.inputAnggota();
           A.inputRelasi();
           A.cetakRelasi();
       }
       public void inputAnggota(){
              System.out.print("Masukkan Jumlah Anggota Himpunan A : ");
              jumlahAnggotaA = Integer.parseInt(input.next());

              System.out.println("Anggota Himpunan A");
              for(int i=1;i<=jumlahAnggotaA;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanA[i]=Integer.parseInt(input.next());
              }

              System.out.print("Masukkan Jumlah Anggota Himpunan B : ");
              jumlahAnggotaB = Integer.parseInt(input.next());

              System.out.println("Anggota Himpunan B");
               for(int i=1;i<=jumlahAnggotaB;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanB[i]=Integer.parseInt(input.next());
              }
       }


       public void inputRelasi(){
              int jmlRelasiMaks = jumlahAnggotaA*jumlahAnggotaB;
              System.out.println("Banyak Relasi maksimal yang terjadi Adalah : "+ jmlRelasiMaks);

              do{
                 System.out.print("Masukkan Jumlah Relasi terjadi : ");
                 jumlahRelasi = Integer.parseInt(input.next());
              }while(jumlahRelasi>jmlRelasiMaks);

              System.out.println("Masukkan Relasi yang Terjadi :");
              for(int i=1; i<=jumlahRelasi;i++){
                 int temp[]=new int[100];
                 int temp2[] = new int[100];
                 boolean SamaA = false;
                 boolean SamaB = false;

                 System.out.println("Relasi ke "+i+" : ");
                 do{
                    System.out.print("Masukkan Asal A : ");
                    temp[i]=Integer.parseInt(input.next());
                    System.out.print("Masukkan Tujuan B: ");
                    temp2[i]=Integer.parseInt(input.next());

                    for (int j= 1; j<=jumlahAnggotaA;j++){
                        if(temp[i]==himpunanA[j]){
                           SamaA=true;
                        }
                    }

                    for (int k= 1; k<=jumlahAnggotaB;k++){
                        if(temp2[i]==himpunanB[k]){
                           SamaB=true;
                        }
                    }
                    if(SamaA==false || SamaB==false){
                        System.out.println("Anggota Himpunan Tidak terdapat dihimpunan A atau B");
                    }

                   if(SamaA==true && SamaB==true){
                        himpunanHasil[i]=temp2[i];
                    }

                 }while(SamaA==false || SamaB==false);
                 }
       }
       public void cetakRelasi(){
              System.out.print("Daerah Domain = { ");
              for(int i=1;i<=jumlahAnggotaA;i++){
                System.out.print(himpunanA[i]+" ");
              }
              System.out.println("}");

              System.out.print("Daerah Kodomain { ");
              for(int i=1;i<=jumlahAnggotaB;i++){
                System.out.print(himpunanB[i]+ " ");
              }
              System.out.println("}");
              System.out.print("Daerah range adalah : { ");
              for(int i= 1;i<= jumlahRelasi;i++){
                   System.out.print(himpunanHasil[i]+ " ");
              }
              System.out.println("}");
       }
}

LA MATIF PERT 1 (Himpunan)



import java.util.*;
import java.io.*;

public class himpunanLA{
       Scanner input = new Scanner(System.in);
       int[] himpunanA= new int[100];
       int[] himpunanB= new int[100];
       int jumlahAnggotaA;
       int jumlahAnggotaB;

       public void dataAnggota() {

              System.out.print("Masukkan Jumlah Anggota Himpunan A : ");
              jumlahAnggotaA = input.nextInt();

              System.out.println("Anggota Himpunan A");
              for(int i=1;i<=jumlahAnggotaA;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanA[i]=input.nextInt();
              }

              System.out.print("Masukkan Jumlah Anggota Himpunan B : ");
              jumlahAnggotaB = input.nextInt();

              System.out.println("Anggota Himpunan B");
               for(int i=1;i<=jumlahAnggotaB;i++){
                      System.out.print("Anggota "+i+" : ");
                      himpunanB[i]=input.nextInt();
              }
       }

       public void tampilAnggota(){
              System.out.print("Anggota Himpunan A = { ");
              for(int i=1;i<=jumlahAnggotaA;i++){

                System.out.print(himpunanA[i]+"   ");
              }
              System.out.println("}");

              System.out.print("Anggota Himpunan B = { ");
              for(int i=1;i<=jumlahAnggotaB;i++){
                System.out.print(himpunanB[i]+ "  ");
              }
              System.out.println("}");
       }






       public void himpunanGabungan(){
          System.out.print("Himpunan Gabungan A U B : { ");
          for(int i=1;i<=jumlahAnggotaA;i++){
                System.out.print(himpunanA[i]+" ");
              }
          for( int i=1;i<=jumlahAnggotaB;i++){
              boolean adaSama = false;
              for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanB[i]+" ");
              }
          }
          System.out.println("}");
       }

       public void himpunanIrisan(){
              System.out.print("Himpunan Irisan A n B : { ");

              for( int i=1;i<=jumlahAnggotaB;i++){
                   boolean adaSama = false;
                   for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==true){
                 System.out.print(himpunanB[i]+" ");
              }
              }
              System.out.println(" }");
       }
       public void himpunanSelisih(){
              System.out.print("Himpunan Selisih A - B : { ");
              for( int i=1;i<=jumlahAnggotaA;i++){
                   boolean adaSama = false;
                   for(int j=1;j<=jumlahAnggotaB;j++){
                     if(himpunanA[i]==himpunanB[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanA[i]+" ");
              }
              }
              System.out.println("}");



              System.out.print("Himpunan Selisih B - A : { ");
              for( int i=1;i<=jumlahAnggotaB;i++){
                   boolean adaSama = false;
                   for(int j=1;j<=jumlahAnggotaA;j++){
                     if(himpunanB[i]==himpunanA[j])
                            adaSama=true;
              }
              if(adaSama==false){
                 System.out.print(himpunanB[i]+" ");
              }

              }
              System.out.println("}");

       }

       public static void main(String args[]){
              himpunanLA bilangan = new himpunanLA();
              bilangan.dataAnggota();
              bilangan.tampilAnggota();
              bilangan.himpunanGabungan();
              bilangan.himpunanIrisan();
              bilangan.himpunanSelisih();
       }

}