Friday 14 January 2011

Fungsi

LISTING PROGRAM

import java.io.*;
public class fungsi
{
public static void main(String [] args)throws Exception
{
DataInputStream   input=new DataInputStream(System.in);
System.out.println("masukan banyak ordinat= ");
int jum=Integer.parseInt(input.readLine());
int x[]=new int[jum];
for(int i=0;i<jum;i++)
{
System.out.print("masukan elemen x ke-"+(i+1)+": ");
x[i]=Integer.parseInt(input.readLine());
}
int yf[]=new int[jum];
for(int i=0;i<jum;i++)
{
yf[i]=x[i]*x[i]+x[i]+1;;
}
int yg[]=new int[jum];
for(int i=0;i<jum;i++)
{
yg[i]=x[i]*x[i]+3;
}
int yfg[]=new int[jum];
for(int i=0;i<jum;i++)
{
yfg[i]=yg[i]*yg[i]+yg[i]+1;
}
System.out.println("fungsi f(x)=x^2+x+1");
System.out.println("fungsi g(x)=x^2+3");
System.out.print("maka f(x)={");
for(int i=0;i<jum;i++)
{
System.out.print(yf[i]);
if(i!=jum-1)
{
System.out.print(",");
}
}
System.out.print("}\n");
System.out.print("maka g(x)={");
for(int i=0;i<jum;i++)
{
System.out.print(yg[i]);
if(i!=jum-1)
{
System.out.print(",");
}
}
System.out.print("}\n");
System.out.print("maka fog(x)={");
for(int i=0;i<jum;i++)
{
System.out.print(yfg[i]);
if(i!=jum-1)
{
System.out.print(",");
}
}
System.out.print("}\n");
System.out.print("maka relasinya terhadap fungsi f(x):\n");
for(int i=0;i<jum;i++)
{
System.out.println("("+x[i]+","+yf[i]+")");
}
System.out.print("maka invers terhadap fungsi f(x):\n");
for(int i=0;i<jum;i++)
{
System.out.println("("+yf[i]+","+x[i]+")");
}
}
}



LOGIKA

1.  Karena kita akan memanipulasi data dengan cara memasukan nilainya masing – masing maka kita menggunakan salah satu kelas input data, yaitu BufferedReader, dan BufferedReader berada dalam package java io, Karena itu kita menggunakan perintah “import java.io.*;”untuk mengimport BufferedReader tersebut. Karena Java Application Programming Interface (API) memiliki ratusan class yang sudah dibuat pada program maka class-class tersebut dikumpulkan ke dalam packages dengan menggunakan simbol *. Packages sendiri memiliki beberapa class-class yang memiliki fungsi-fungsi tertentu.

2.   Mendeklarasikan nama class, pada program ini diberi nama “fungsi”.

3.  Menuliskan method yang akan kita gunakan yaitu “public static void main(String[] args) throws IOException”. Karena kita tidak menyertakan blok try-catch di dalam method yang mengandung kode-kode yang yang mungkin menimbulkan eksepsi , maka kita harus menyertakan klausa throws (diikuti hurus ‘s’, bukan throw) pada saat pendeklarasian method bersangkutan. Jika tidak, maka program tidak dapat di kompilasi.

4. Membuat objek input dari class DataInputStreamReader  dengan perintah DataInputStream   input=new DataInputStream(System.in); yang digunakan untuk menginput data inputtan banyaknya koordinat.

5.  Mencetak tulisan masukan banyak ordinat dengan perintah System.out.println("masukan banyak ordinat= ");

6.  Mendeklarasikan int jum=Integer.parseInt(input.readLine());, maksudnya adalah inputan itu disimpan dalam variabel jum bertipe int, yang sebelumnya variabel input telah dikonversi ke integer.

7.  Mendeklarsikan int x[]=new int[jum];, maksudnya adalah membuat array x, yang banyak elemen array sesuai dengan nilai variabel jum.

8.  Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

9.  Mencetak masukan elemen x ke- dengan perintah “System.out.print("masukan elemen x ke-"+(i+1)+"; ");, karena nilai i awalnya 0 maka untuk nilai yang akan muncul harus ditambahkan 1 agar sesuai dengan nilai yang tadi kita masukan.

10. Mendeklarsikan x[i]=Integer.parseInt(input.readLine());}, maksudnya adalah agar nilai-nilai yang telah kita masuksn tadi disimpan dalam variabel array.

11. Mendeklarasikan int yf[]= new int[jum];, maksudnya adalah membuat array yf[] yang jumlah isinya sebanyak nilai variabel jum, ini adalah fungsi f(x)

12. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya adalah nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

13. Mendeklarasikan yf[i]=x[i]*x[i]+x[i]+1;;}, maksudnya adalah untuk memproses nilai-nilai dari variabel tadi. . Secara garis besarnya adalah memasukkan nilai array yf[i] yang isinya adalah nilai array x[ i] dikali array x[ i] dan ditambah 1, ini adalah rumus fungsi f(x) yang kita gunakan.

14. Mendeklarasikan int yg[]=new int[jum];, maksudnya adalah membuat variabel array yg[] yang jumlah isinya sebanyak nilai variabel jum. Ini adalah fungsi g(x).

15. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya adalah nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

16. Mendeklarasikan yg[i]=x[i]*x[i]+x[i]+1;;}, maksudnya adalah untuk memproses nilai-nilai dari variabel tadi. Secara garis besarnya adalah memasukkan nilai array yg[i] yang isinya adalah nilai array x[i] dikali arrayx[i] ,ditambah array x[i] dan ditambah 1, ini adalah rumus fungsi g(x) yang kita gunakan

17. Mendeklarasikan int yfg[]=new int[jum];, maksudnya adalah membuat variabel array yfg[] yang jumlah isinya sebanyak nilai variabel jum. Ini adalah fungsi fog(x).

18.  Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya adalah nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

19. Mendeklarasikan yfg[i]=yg[i]*yg[i]+yg[i]+1;}, maksudnya adalah untuk memproses nilai-nilai dari variabel tadi. Secara garis besarnya adalah memasukkan nilai array yfg[i] yang isinya adalah nilai array yg[i] dikali array yg[i] ,ditambah array yg[i] dan ditambah 1, ini adalah rumus fungsi fog(x) yang kita gunakan

20. Mencetak output tulisan untuk fungsi f(x) dan g(x) dan mencetak keluaran untuk f(x) maka dilakukan perintah :
            System.out.println("fungsi f(x)=x^2+x+1");
  System.out.println("fungsi g(x)=x^2+3");
            System.out.print("maka f(x)= (");

21. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya

22. Mencetak nilai fungsi f(x) yaitu nilai dari array yf[i] yang telah kita buat sebelumnya adalah hasil fungsi f(x)nya dengan perintah  System.out.print(yf[i]);

23. Mendeklarasikan pengandaian if(i!=jum-1){, maksudnya sebagai perintah kondisi yang artinya jika nilai i tidak sama dengan nilai x-1,maka akan tercetak “,” dengan perintah System.out.print(",");}} dan jika kondisi tidak sesuai maka akan melanjutkan ke proses System.out.print("}\n");, yang berfungsi untuk membuat baris baru.

24. Mencetak "maka g(x)={" dengan perintah System.out.print("maka g(x)=(");

25. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

26. Mencetak nilai fungsi g(x) yaitu nilai dari array yg[i] yang telah kita buat sebelumnya adalah hasil fungsi g(x)nya dengan perintah  System.out.print(yg[i]);.

27. Mendeklarasikan pengandaian if(i!=jum-1){, maksudnya sebagai perintah kondisi yang artinya jika nilai i tidak sama dengan nilai x-1,maka akan tercetak “,” dengan perintah System.out.print(",");}} dan jika kondisi tidak sesuai maka akan melanjutkan ke proses System.out.print("}\n");, yang berfungsi untuk membuat baris baru.
                       
28. Mencetak "maka fog(x)={" dengan perintah System.out.print ("maka fog(x)=(");.

29. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

30. Mencetak nilai fungsi fog(x) yaitu nilai dari array yfg[i] yang telah kita buat sebelumnya adalah hasil fungsi fog(x)nya dengan perintah  System.out.print(yfg[i]);.

31. Mendeklarasikan pengandaian if(i!=jum-1){, maksudnya sebagai perintah kondisi yang artinya jika nilai i tidak sama dengan nilai x-1,maka akan tercetak “,” dengan perintah System.out.print(",");}} dan jika kondisi tidak sesuai maka akan melanjutkan ke proses System.out.print("}\n");, yang berfungsi untuk membuat baris baru.
                       
32. Mencetak “maka relasinya terhadap fungsi f(x):” dengan perintah System.out.print("maka relasinya terhadap fungsi f(x):\n");

33. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

34. Mencetak nilai array x[i] sebelumnya yang pertama kita masukkan elemen-elemen dari banyaknya array dan juga mencetak elemen elemen array yf[i] yang telah kita buat dan hitung sebelumnya , maka terjadilah relasi untuk elemen array yang kita inputkan dan elemen array fungsi f(x) nya. Maka digunakan perintah  System.out.println("("+x[i]+","+yg[i]+")");}

35. Mencetak "maka invers terhadap fungsi g(x):" dengan perintah System.out.print("maka invers terhadap fungsi g(x):\n");

36. Mendeklarasikan for (int i=0;i<jum;i++){, maksudnya nilai pertama i adalah 0, syarat pengulangannya i<jum, dan banyaknya penambahan nilainya i++ yang jika syarat terpenuhi maka akan melanjutkan ke proses selanjutnya.

37. Mencetak nilai array yf[i] sebelumnya telah kita buat dan hitung dan juga mencetak elemen elemen array x[i] yang yang pertama kita masukkan elemen-elemen dari banyaknya array , maka terjadilah invers (kebalikan) untuk fungsi g(x) nya. Maka digunakan perintah  System.out.println("("+yf[i]+","+x[i]+")");}

0 comments:

Post a Comment