Program Relasi Dengan JAVA + LOGIKA

Posted: Desember 22, 2010 in Uncategorized

SOURCE CODE PROGRAM

import java.io.*;

public class relasi{

public static void main(String[] args) throws Exception

{

int i, j;

int [] k = new int [10];

int [] l = new int [10];

BufferedReader input = new BufferedReader(new InputStreamReader(System.in)); System.out.print(“Banyak Anggota himpunan a maksimal 10 : “);

int a = Integer.parseInt(input.readLine());

System.out.println(“\n”);

for (i = 1; i <= a; i++)

{

System.out.print(“Elemen himpunan a ke-” + i + ” : “);

int x = Integer.parseInt(input.readLine());

k [i] = x;

}

System.out.print(“a = {“);

for (i = 1; i <= a; i++)

{

System.out.print(k [i]);

if(i != a)

{

System.out.print(“, “);

}

}

System.out.print(“}”);

System.out.println(“\n\n”);

System.out.print(“Banyak Anggota himpunan b maksimal 10 : “);

int b = Integer.parseInt(input.readLine());

System.out.println(“\n”);

for (j = 1; j <= b; j++)

{

System.out.print(“Elemen himpunan b ke-” + j + ” : “);

int y = Integer.parseInt(input.readLine());

l [j] = y;

}

System.out.print(“b = {“);

for (j = 1; j <= b; j++)

{

System.out.print(l [j]);

if(j != b)

{

System.out.print(“, “);

}

}

System.out.print(“}”);

System.out.println(“\n\n”);

System.out.println(“Relasi yang mungkin :”);

System.out.print(“{“);

 

for (i = 1; i <= a; i++)

{

for (j = 1; j<= b; j++)

{

System.out.print(“(” + k[i] + “, ” + l[j] + “)”);

}

}

System.out.println(“}”);

System.out.println(“\n\n”);

System.out.println(“Sifat simetris dari relasi a dan b :”);

System.out.print(“{“);

for (i = 1; i <= a; i++)

{

for (j = 1; j<= b; j++)

{

System.out.print(“(” + k[i] + “, ” + l[j] + “)”);

System.out.print(“(” + l[j] + “, ” + k[i] + “)”);

}

}

System.out.println(“}\n\nSifat refleksif dari relasi a : ” + “\n”);

System.out.print(“{“);

for (i = 1; i <= a; i++)

{

System.out.print(“(” + k[i] + “, ” + k[i] + “)”);

}

System.out.println(“}\n\nSifat refleksif dari relasi b : ” + “\n”);

System.out.print(“{“);

for (j = 1; j <= b; j++)

{

System.out.print(“(” + l[j] + “, ” + l[j] + “)”);

}

System.out.println(“}”);

}

}

PENJELASAN (LOGIKA) PROGRAM

Program diatas bertujuan  untuk menentukan relasi yg mungkin, kemudian menentukan sifat simetris dan reflektif dari relasi himpunan a ke b atau sebaliknya. Untuk itu diperlukan 2 himpunan  dengan anggota-anggotanya (elemennya) yang pada program ini jumlah anngota dan nilai dari masing masing anggotanya bisa ditentukan dengan melakukan input menggunakan java i.o.

Untuk  menentukan jumlah dan nilai dari himpunan a dan b maka dituliskan int i, j;

int [] k = new int [10];

int [] l = new int [10];

yang artinya banyak anggotanya nanti pada tiap-tiap himpunan tidak bisa lebih dari 10, kemudian setelah menentukan batas dari  jumlah anggota tiap himpunannya

BufferedReader input = new BufferedReader(new InputStreamReader(System.in)); System.out.print(“Banyak Anggota himpunan a maksimal 10 : “);

int a = Integer.parseInt(input.readLine());

System.out.println(“\n”);

Ini merupakan pernyataan untuk dapat melakukan input dari keyboard untuk menentukan jumlah anggota dari himpunan a, dimana yg diinput dsisini adalah nilai dari a, yaitu nilai yang berupa bilangan bulat.

Kemudian setelah menentukan jumlah anggota dari himpunan, maka harus ditentukan elemen-elemen dari himpunan a nya dimana elemen-elemen dari himpunan a hanya sejumlah a(jumlah anggota a yg nilainya harus kurang dari sepuluh yang ditentukan sesuai inputan), untuk itu dituliskan

for (i = 1; i <= a; i++)

{

System.out.print(“Elemen himpunan a ke-” + i + ” : “);

Dimana harga awal i yg berupa bilangan bulat bernilai satu dan nilai i harus kurang dari jumlah anggota himpunan yg diinputkan diawal, nilai i nya akan bertambah satu, maka akan tercetak kata Elemen himpunan a ke 1, Elemen himpunan a ke 2, Elemen himpunan a ke3 , sampai tercetak Elemen himpunan a ke a.

Contohnya jika kita menginput nilai dari a= 5, maka akan tercetak  maka akan tercetak kata Elemen himpunan a ke 1, Elemen himpunan a ke 2, Elemen himpunan a ke3 , sampai tercetak Elemen himpunan a ke 5.

Kemudian untuk menentukan nilai dari elemen ke satu sampai elemen ke a dari himpunan a maka dituliskan int x = Integer.parseInt(input.readLine());

k [i] = x;

dimana nilai dari x adalah nilai yang kita input untuk nilai dari masing-masing elemen, setelah menetukan jumlah anggota dan nilai dari elemen elemennya, di cetak bentuk himpunanya untuk itu dituliskan

System.out.print(“a = {“);

for (i = 1; i <= a; i++)

{

System.out.print(k [i]);

if(i != a)

{

System.out.print(“, “);

}

}

System.out.print(“}”);

System.out.println(“\n\n”);

Dimana akan tercetak a = { (nilai dari elemen-elemen yang telah ditentukan)} dan jumlah elemennya belum sejumlah nilai dari a (jumlah anggota yahg kita inputkan di awal maka akan di cetak tanda koma (,) dan bila jumlahnya sudah sesuai akan tercetak tanda }

 

System.out.print(“Banyak Anggota himpunan b maksimal 10 : “);

int b = Integer.parseInt(input.readLine());

System.out.println(“\n”);

Ini merupakan pernyataan untuk dapat melakukan input dari keyboard untuk menentukan jumlah anggota dari himpunan b, dimana yg diinput dsisini adalah nilai dari b, yaitu nilai yang berupa bilangan bulat.

Kemudian setelah menentukan jumlah anggota dari himpunan, maka harus ditentukan elemen-elemen dari himpunan b nya dimana elemen-elemen dari himpunan b hanya sejumlah b(jumlah anggota a yg nilainya harus kurang dari sepuluh yang ditentukan sesuai inputan), untuk itu dituliskan

for (j = 1; i <= b; j++)

{

System.out.print(“Elemen himpunan b ke-” + j + ” : “);

Dimana harga awal j yg berupa bilangan bulat bernilai satu dan nilai j harus kurang dari jumlah anggota himpunan yg diinputkan diawal, nilai j nya akan bertambah satu, maka akan tercetak kata Elemen himpunan b ke 1, Elemen himpunan b ke 2, Elemen himpunan b ke3 , sampai tercetak Elemen himpunan b ke b.

Contohnya jika kita menginput nilai dari b= 5, maka akan tercetak  maka akan tercetak kata Elemen himpunan b ke 1, Elemen himpunan b ke 2, Elemen himpunan b ke3 , sampai tercetak Elemen himpunan b ke 5.

Kemudian untuk menentukan nilai dari elemen ke satu sampai elemen ke b dari himpunan b maka dituliskan int x = Integer.parseInt(input.readLine());

l [j] = y;

dimana nilai dari y adalah nilai yang kita input untuk nilai dari masing-masing elemen, setelah menetukan jumlah anggota dan nilai dari elemen elemennya, di cetak bentuk himpunanya untuk itu dituliskan

System.out.print(“b = {“);

for (j = 1; j <= b; j++)

{

System.out.print(l [j]);

if(j!= a)

{

System.out.print(“, “);

}

}

System.out.print(“}”);

System.out.println(“\n\n”);

Dimana akan tercetak b = { (nilai dari elemen-elemen yang telah ditentukan)} dan jumlah elemennya belum sejumlah nilai dari b (jumlah anggota yahg kita inputkan di awal maka akan di cetak tanda koma (,) dan bila jumlahnya sudah sesuai akan tercetak tanda }

Stelah menentukan himpunan a dan himpunan b nya pada program ini ditentukan pula relasi relasi yh mungkin terjadi

System.out.println(“Relasi yang mungkin :”); digunakan untuk mencetak tulisan Relasi yang mungkin :

System.out.print(“{“); kemudian mencetak tanda {

for (i = 1; i <= a; i++)

{

for (j = 1; j<= b; j++)

{

Maksudnya untuk jumlah dari elemen dari himpunann a dab b nya akan tercetak sesuai dengan inputan

System.out.print(“(” + k[i] + “, ” + l[j] + “)”); dimana pernyataan ini berati akan tercetak elemen elemen dari himpunan a, elemen elemen dari himpunan b

kemudian setelah tercetak sesuai jumlah yang diinputkan tercetak tabda } dengan pernyataan System.out.println(“}”);

setelah menentukan relasi yang mungkin program diatas juga menentukan Sifat simetris dari relasi a dan b

System.out.println(“Sifat simetris dari relasi a dan b :”); berfungsi untuk mencetak tulisan Sifat simetris dari relasi a dan b :

System.out.print(“{“); kemudian tercetak tanda {

for (i = 1; i <= a; i++)

{

for (j = 1; j<= b; j++)

{

Maksudnya untuk jumlah dari elemen dari himpunann a dab b nya akan tercetak sesuai dengan inputan

System.out.print(“(” + k[i] + “, ” + l[j] + “)”);

System.out.print(“(” + l[j] + “, ” + k[i] + “)”);

dimana pernyataan ini berati akan tercetak elemen elemen dari himpunan a, elemen elemen dari himpunan b yang nilainya sama jika dibalik elemen dari himpunan b , himpunan a.

kemudian setelah tercetak sesuai jumlah yang diinputkan tercetak tabda } dengan pernyataan System.out.println(“}”);

kemudian untuk menampilkan sifat reflektif dari relasi a maka dituliskan

System.out.println(“}\n\nSifat refleksif dari relasi a : ” + “\n”); untuk menampilkan tulisan Sifat refleksif dari relasi a :

System.out.print(“{“);kemudian tercetak tanda {

for (i = 1; i <= a; i++)

{

Maksudnya untuk jumlah dari elemen dari himpunann a nya akan tercetak sesuai dengan inputan

System.out.print(“(” + k[i] + “, ” + k[i] + “)”);

dimana pernyataan ini berati akan tercetak elemen elemen dari himpunan a, elemen elemen dari himpunan a itu sendiri

Begitu juga untuk menentukan sifat refleksif dari relasi .maka jika pada saat running program banyak anggota himpunan a maksimal 10 kita inputkan nilai 3, dan elemen 1nya kita inpukan 1 elemen 2 nya 2 dan elemen ketiganya 3, sedangkan untuk banyaknya anggota himpunan b maksimal kita inputkan 3 dan nilai dari elemen 1 nya 1 elemen 2 nya kita inputkan 3 dan elemen 3 nya kita inputkan 5 maka, saat running program hasilnya akan tampak seperti pada gambar

sekian penjelasan dari saya semoga bermanfaat, kalo masih ada yang ga ngerti, ya wajarlah, saya sendiri aja yg udah ngejelasin panjang lebar masih ga ngerti…

ya udahlah ga usah terlalu dipikirin kalo dapet tugas disuruh buat logika program, bikin aja sendiri..ga usah bingung-bingung, bikin logika tuh hanya permainan kata-kata..hahahaha

—————————————————————————————————————————————————-

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