• Assalamu'alaikum Warrahmatullah Wabarakatuh
  • Welcome To My Blog

Kamis, 14 Februari 2013

Contoh Java Relasi



Listing Program Relasi
import static java.lang.System.out;
import static java.lang.System.err;
import java.io.*;

public class Relation{
String[] himpunanA= new String[100];
String[] himpunanB= new String[100];
String[] himpunanHasil = new String[100];
int jumlahAnggotaA;
int jumlahAnggotaB;
int jumlahRelasi;

private String bacaKey(){
Console konsol = System.console();
return konsol.readLine();
}

public void inputAnggota(){
out.print("Masukkan JUmlah Anggota Himpunan : ");
jumlahAnggotaA = Integer.parseInt(bacaKey());

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

out.print("Masukkan Jumlah Anggota B : ");
jumlahAnggotaB = Integer.parseInt(bacaKey());

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


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

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

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

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

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

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

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

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

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

public static void main(String args[]){
Relation A = new Relation();
A.inputAnggota();
A.inputRelasi();
A.cetakRelasi();
}
}





Logika Program
import static java.lang.System.out;
import static java.lang.System.err;
import java.io.*;
·          Listing ini digunakan untuk memasukkan nilai java io.

public class Relation{
String[] himpunanA= new String[100];
String[] himpunanB= new String[100];
String[] himpunanHasil = new String[100];
int jumlahAnggotaA;
int jumlahAnggotaB;
int jumlahRelasi;
·          Listing ini digunakan untuk memberikan nama kelas java, serta memberikan penjumlahan terhadap Anggota A, B dan juga Relasi yang bervariabel integer.

private String bacaKey(){
Console konsol = System.console();
return konsol.readLine();
}
·          Listing ini digunakan untuk memberikan pengendalian terhadap suatu system Java dengan cara membacanya dan kemudian kembali lagi ke system java.

public void inputAnggota(){
out.print("Masukkan JUmlah Anggota Himpunan : ");
jumlahAnggotaA = Integer.parseInt(bacaKey());
·          Listing ini digunakan untuk memberikan perintah masukkan Jumlah Anggota A, serta digunakan untuk mencari nilai integer(nilai asli)

out.println("Anggota Himpunan A");
for(int i=1;i<=jumlahAnggotaA;i++){
out.print("Anggota "+i+" : ");
himpunanA[i]=bacaKey();
}
·          Listing ini digunakan untuk memberikan perintah tentang masukan Anggota Himpunan A kemudian digunakan untuk melakukan perhitungan terhadap Jumlah Anggota A.


out.print("Masukkan Jumlah Anggota B : ");
jumlahAnggotaB = Integer.parseInt(bacaKey());
out.println("Anggota HImpunan B:");
for(int i=1;i<=jumlahAnggotaB;i++){
out.print("Anggota "+i+" : ");
himpunanB[i]=bacaKey();
}
}
·          Listing ini digunakan untuk memberikan nilai Anggota B yang bervariabel, Integer kemudian melakukan perhitungan Jumlah Anggota B secara berulang-ulang.

public void inputRelasi(){
int jmlRelasiMaks = jumlahAnggotaA*jumlahAnggotaB;
out.println("Banyak Relasi maksimal yang terjadi Adalah : "+ jmlRelasiMaks);
do{
out.print("Masukkan Jumlah Relasi terjadi : ");
jumlahRelasi = Integer.parseInt(bacaKey());
}while(jumlahRelasi>jmlRelasiMaks);
·          Listing ini digunakan untuk memasukkan Relasi maksimal dengan cara perhitungannya adalah Jumlah Anggota A dikali dengan Jumlah Anggota B. Nilai tersebut bervariabel Integer artinya hasil nilainya adalah asli.

out.println("Masukkan Relasi yang terjadi : ");
for(int i=1;i<=jumlahRelasi;i++){
String temp[]=new String[100];
String temp2[]=new String[100];
boolean SamaA = false;
boolean SamaB = false;
out.println("Relasi ke "+i+" : ");
·          Listing ini digunakan untuk melakukan perhitungan tentang Relasi dengan memberikan nilai awal terlebih dahulu.

do{
out.print("Masukkan Asal A : ");
temp[i]=bacaKey();
out.print("Masukkan Tujuan B : ");
temp2[i]=bacaKey();
·          Listing ini digunakan untuk membuat Hasil tanpa masuk ke system dengan cara membaca key yang sudah dibuat sebelumnya.

for(int j= 1; j <=jumlahAnggotaA;j++){
if(temp[i].equals(himpunanA[j])){
SamaA=true;
}
}
for (int k= 1; k <=jumlahAnggotaB;k++){
if(temp2[i].equals(himpunanB[k])){
SamaB=true;
}
}
·          Listing ini digunakan untuk melakukan perulangan perhitungan terhadap Jumlah Anggota A dan Jumlah Anggota B serta digunakan untuk menghitung Himpunan A dan Himpunan B.

if(SamaA==false || SamaB==false){
out.println("Angota Himpunan Tidak terdapat di himpunan A atau B");
}
if(SamaA==true && SamaB==true){
himpunanHasil[i]=temp2[i];
}
}while(SamaA==false || SamaB==false);
}
}
·          Listing ini digunakan untuk menyatakan jika kalau jumlah Anggota Himpunan tidak terdapat pada Himpunan A maupun Himpunan B.

public void cetakRelasi(){
out.print("Daerah Domain = { ");
for(int i=1;i<=jumlahAnggotaA;i++){
out.print(himpunanA[i]+"  ");
}
out.println("}");
·          Listing ini digunakan untuk membuat sebuah komponen cetak Relasi, kemudian digunakan untuk menampilkan Daerah Domain, selanjutnya listing ini digunakan untuk melakukan perhitungan pada Jumlah Anggota A dan Himpunan A.

out.print("Daerah Kodomain { ");
for(int i=1;i<=jumlahAnggotaB;i++){
out.print(himpunanB[i]+"  ");
}
·          Listing ini digunakan untuk menampilkan hasil berupa Daerah kodomain serta digunakan juga untuk melakukan perhitungan dengan menggunakan Jumlah Anggota B dan Himpunan B.

out.println("}");
out.print("Daerah range adalah : { ");
for(int i= 1; i<= jumlahRelasi;i++){
out.print(himpunanHasil[i]+"  ");
}
out.println("}");
}
·          Listing ini digunakan untuk melihat hasil Daerah Range dengan perhitungannya adalah Menggunakan Jumlah Relasi dan Himpunan Hasil yang sudah dibuat sebelumnya.

public static void main(String args[]){
Relation A = new Relation();
A.inputAnggota();
A.inputRelasi();
A.cetakRelasi();
}
}
·          Listing ini digunakan untuk melakukan proses pemunculan hasil pada listing yang sudah dibuat. Proses ini juga digunakan untuk memasukkan jumlah inputAnggota, inputRelasi, serta cetakRelasi.

1 komentar:

Unknown mengatakan...

wah gg bang logika ku cepet selesai bang

Posting Komentar