LA matif 2

Input

import java.util.Scanner;
public class kartesius
{
public static void main ( String [] args)
{
Scanner input = new Scanner(System.in);
int[] a = new int [10];
int[] b = new int [10];
int anggotaA;
int anggotaB;

//masukkan banyaknya anggota a
do //(untuk menyeleksi banyaknya data masukan)
{
System.out.print(“Masukkan Banyaknya Himpunan A ( x 10)
System.out.println(“\n nilai harus \”x 10);

//masukkan banyaknya anggota b
do
{
System.out.print(“Masukkan Banyaknya Himpunan B ( y 10)
System.out.println(“\n nilai harus \”y 10);

//masukkan elemen a
System.out.println(“\nMasukkan Elemen Anggota A”);
for(int i = 0 ; i <= anggotaA – 1 ; i++)
{
int z= i + 1;
System.out.print("\nElemen ke-["+z+"] : ");
a[i] = input.nextInt();
}

System.out.println("\n");

//masukkan elemen b
System.out.println("\nMAsukkan Anggota B");
for( int w = 0 ; w <= anggotaB – 1 ; w++)
{
int L = w + 1;
System.out.print("\nElemen ke-["+L+"] : ");
b[w] = input.nextInt();
}

System.out.println("\n");

//hasil kartesius
System.out.println("====HASIL KASRTESIUS====" );
for(int i = 0 ; i <= anggotaA – 1 ; i++)
{
for( int w = 0 ; w <= anggotaB – 1 ; w++)
{
System.out.print("{" + a[i] + "," + b[w] + "}");
}
}
System.out.println("\n");
}

}

Logika program

import java.util.Scanner;
public class kartesius
{
public static void main ( String [] args)
{
Scanner input = new Scanner(System.in);
int[] a = new int [10];
int[] b = new int [10];
int anggotaA;
int anggotaB;

saya akan menjelaskan listing program diatas untuk pertama program diatas menggunakan sebuah method yang berfungsi untuk Scanner lalu berlanjut seperti yang kita tahu kelas tersebut public dengan nama kelas kartesius lalu pembuka untuk method baru di tuliskan bahwa isinya dapat diakses oleh siapapun dan ada kita bertujuan untuk mengambil data sebagai masukkan dengan merekam dari aktivitas ketikan keyboard atau yang kita ketik dikeyboard, lalu disana ada 2 variabel integer yaitu a dan b yang nilai masing-masingnya dibatasi sampai 10 lalu kedua variabel itu digunakan untuk proses.

//masukkan banyaknya anggota a
do //(untuk menyeleksi banyaknya data masukan)
{
System.out.print("Masukkan Banyaknya Himpunan A ( x 10)
System.out.println(“\n nilai harus \”x 10);

//masukkan banyaknya anggota b
do
{
System.out.print(“Masukkan Banyaknya Himpunan B ( y 10)
System.out.println(“\n nilai harus \”y 10);

//masukkan elemen a
System.out.println(“\nMasukkan Elemen Anggota A”);
for(int i = 0 ; i <= anggotaA – 1 ; i++)
{
int z= i + 1;
System.out.print("\nElemen ke-["+z+"] : ");
a[i] = input.nextInt();
}

System.out.println("\n");

//masukkan elemen b
System.out.println("\nMAsukkan Anggota B");
for( int w = 0 ; w <= anggotaB – 1 ; w++)
{
int L = w + 1;
System.out.print("\nElemen ke-["+L+"] : ");
b[w] = input.nextInt();
}

System.out.println("\n");

Dalam proses selanjutnya kita akan mencoba memproses banyaknya anggota a dengan memulai menginput data, kita mencoba untuk menyeleksi banyaknya data masukkan dengan kurung kurawa buka kita akan memasukkan banyak himpunan a yang dari awal kita batasi dengan sebanyak 10 saja, lalu anggota a pun di input dengan method next int ini menjelaskan data ini berlanjut, lalu ada pernyataan jika banyak himpunan a harus dibawah 10 lalu tercetaklah banyaknya himpunan a yang telah kita input.Dengan melanjutkan perintah sebelumnya bahwa kita akan melakukan perulangan dengan while-do.
Sama seperti sebelumnya hampir sama sekali sistemnya penjabaran prosenya dengan diatas.
Yang kita lakukan adalah melakukan memasukkan elemen a dan b, mencetak elemen anggota a dan lompat satu baris dibawah, lalu terjadi proses perulangan kalau i itu bernilai 0 lalu i itu kurang atau sama dengan anggotaA-1 dan i itu terjadi penambahan elemen. Ada variabel z yang sama dengan i+1
Lalu tercetaklah dari elemen a ke 1- yang kita mau dengan mengisi inputan yang kita inginkan dan melompat 1 baris kosong. Ada variabel a yang dibatasi dengan i dan ini menjelaskan intinya kalau setiap elemen terserah kita isi apa. Lalu terlongkap sebanyak 2 baris kebawah, untuk elemen b sama seperti elemen a.

//hasil kartesius
System.out.println("====HASIL KASRTESIUS====" );
for(int i = 0 ; i <= anggotaA – 1 ; i++)
{
for( int w = 0 ; w <= anggotaB – 1 ; w++)
{
System.out.print("{" + a[i] + "," + b[w] + "}");
}
}
System.out.println("\n");
}

}

Disini kita akan memproses untuk menciptakan sebuah kartesius produk, pertama kita mencetak dulu dibaris baru kalimat hasil kartesius, dengan perulang for kita beri nilai kalau i itu =0 dan i<=anggota a-1 dan i itu berlanjut berdasarkan banyak himpunan lalu ada for didalam for yang menjelaskan untuk anggota b dengan konsep sama seperti hal pertama. Untuk hasil kita akan mencetak disamping itu. Ada ruang kosong itu untuk mengisi elemen dari a dan elemen b yang sudah diproses sebelumnya.
Input:

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

public class relasi {
public static void main ( String [] args ) throws Exception
{
Scanner input = new Scanner(System.in);
int anggotaA;
int anggotaB;

//masukkan banyaknya Anggota dan Elemennya
System.out.print("\nmasukan Banyaknya AnggotaA : ");
anggotaA = input.nextInt();
int [] a = new int [anggotaA];
System.out.println("Masukkan AnggotaA : ");
for(int i=0 ; i <= anggotaA – 1 ; i++)
{
int L = i + 1;
System.out.print("Elemen ke-["+L+"] :");
a[i] = input.nextInt();
}

//masukkan elemen AnggotaB
System.out.print("\nmasukkan banyaknya AnggotaB : ");
anggotaB = input.nextInt();
int [] b = new int [anggotaB];
System.out.println("Masukkan AnggotaB : ");
for(int i=0 ; i <= anggotaB – 1 ; i++)
{
int L = i + 1;
System.out.print("Elemen ke-["+L+"] :");
b[i] = input.nextInt();
}
System.out.println("\n");

//tampil anggotaA
System.out.print("Anggota Himpunan A = { ");
for(int i=0;i<=anggotaA – 1;i++){
System.out.print(a[i]+" ");
}
System.out.println("}");

//tampil anggotaB
System.out.print("Anggota Himpunan B = { ");
for(int i=0;i<=anggotaB – 1 ;i++){
System.out.print(b[i]+ " ");
}
System.out.println("}");

//jumlah kedua anggota
int jumlahAB = anggotaA + anggotaB;

//inputkan relasi Antara Anggota A dan B

String[] e = new String[jumlahAB];
System.out.print("masukkan banyaknya relasi [ <= "+jumlahAB+" ] : " );
int banyak = input.nextInt();
char[] f = new char[banyak];
char[] g = new char[banyak];
System.out.println("inputkan dengan cara A,B ");
DataInputStream bl = new DataInputStream(System.in);
for(int i=0;i<=banyak-1;i++)
{
e[i] = bl.readLine();
}

//mengambil karakter
try{
for(int i=0;i<=banyak-1;i++)
{
e[i].getChars(0,1,f,i);
e[i].getChars(2,3,g,i);
}

boolean cek = true;
for(int i=0;i<=banyak-1;i++)
{
for(int x=0;x<=i;x++)
{
if(f[i]!=a[x])
{
cek = false;
}
else
if(g[i]!=b[x])
{
cek= false;
}
}
}

if(cek==false)
{System.out.println("Out Of Range");}
else
{System.out.println("\n");}
}
catch(Exception ex){ System.out.println("\n");}

//Range
System.out.print("\nRange = { ");
for(int i=0;i<=banyak-1;i++)
{
System.out.print(g[i]+" ");
}
System.out.println("}");

//domain
System.out.print("Domain = { ");
for(int i=0;i<=anggotaA-1;i++){
System.out.print(a[i]+" ");
}
System.out.println("}");

//invers
System.out.print("Invers = { ");
for(int n=0;n<=banyak-1;n++)
{
System.out.print("{"+g[n] +","+ f[n]+"}");
}
System.out.print(" }\n\n");

}
}

Output:

Logika program
Kelas dengan nama relasi ini public sehingga dapat diakses oleh siapapun, dengan method, dan membuang pengecualian, dengan method scanner kembali kita mengolah variabel anggotaA dan B. Kita disini akan mencoba banyaknya anggota dan elemen dengankonsep perulangan for lalu ada variabel L lalu dicetaklah, dan dijelaskan disana kalau a itu tergantung i. Sama seperti anggota a, anggota b juga mengalami proses sama.
Kita disini akan menampilkan pertama mencetak dulu anggota yang pertama untuk anggota selanjutnya menyusul dengan pernyataan for, untuk yang b juga sama. Lalu jumlah kedua anggota ditambahkan dengan variabel jumlah ab=anggota a + anggota b, lalu dideklarasikan kalai jumlah ab itu menjadi sebuah string, lalu yang terjadi kita akan mencetak hasil pertambahan tadi dengan mengetik ulang banyaknya relasi. Integer banyak di input lagi, lalu ada variabel char f dan g yang sudah dibatasi oleh variabel banyak diatas tadi, lalu kita diminta mengetik inputan seperti a,b lalu dengan method datainputstream dan ditambah system.in baru kita melakukan pengetikan. Mengambil karakter dengan try lalu ditambahkan lagi denga perulangan, lalu boolean cek bernilai true lalu terjadi perulangan dan didalamnya terjadi perulangan lalu ditambahkan dengan if ada boolean bernilai false. Lalu cek sama dengan false dan dicetak diluar range tapi jika tidak dictak dengan menangkap kesalahan.
Dari atas tadi baru kita bisa menjalankan dan menentukan range, domain dan invers, dari range dengan pernyataan perulangan for lalu tercetaklah daerah hasil dari relasi dan domain akan tercetak daerah asal diatas dengan pernyataan for juga dan begitu pula dengan invers yang menggunakan metode for. Terima kasih.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s