AGENDA
Tutorials - Java
Tut 6: Method

Bab ini menjelaskan bagaimana membuat fungsi yang dapat dikerjakan oleh objek.



Bab ini menjelaskan bagaimana membuat fungsi yang dapat dikerjakan oleh objek. Metode menentukan perilaku objek, yaitu apa yang terjadi ketika objek itu dibuat serta operasi apa yang dapat dilakukannya. Kita hanya tinggal menulis nama method untuk menjalankannya.

File video:
1. Video 6a. Netbeans- Method

 

Pengertian
Method adalah kumpulan program yang mempunyai nama. Program harus dibungkus dalam method. Dengan method kita bisa memanggil kumpulan program hanya dengan memanggil nama methodnya sehingga program menjadi lebih terstruktur, praktis, dan efisien.

 

Fungsi

public static int tambahFungsi(int n1, int n2){
     int tambah;
     tambah = n1 + n2;
     return tambah; (memberikan nilai balik melalui return)
}

 

Prosedur

public static void tambahProsedur(int n1, int n2){
     int tambah;
     tambah = n1 + n2;   (tidak ada nilai balik)
}

Perbedaan fungsi dengan prosedur adalah fungsi memberikan nilai balik, sementara prosedur tidak.

 

Rekursi
Rekursi adalah arti suatu proses yang memanggil dirinya sendiri. Dalam sebuah rekursi sebenarnya tekandung pengertian sebuah prosedur atau fungsi. Perbedaannya adalah bahwa rekursi bisa memanggil dirinya sendiri, kalau prosedur atau fungsi harus diipanggil melalui pemanggil prosedur atau fungsi

 

Anagram
Anagram adalah fungsi yang akan mengecek 2 buah kata yang memiliki jumlah setiap karakternya sama. Pengaplikasian biasanya pada permainan scrable misalnya kita memiliki beberapa huruf dan huruf-huruf tersebut dapat membentuk kata ‘gabus’ atau ‘bagus’. Dengan demikian kita dapat mengatakan bahwa ‘gabus’ dan ‘bagus’ adalah anagram.

/*
Nama File : Anagram.java
Programmer: www.aplysit.com
Tanggal   : 22 November 2012
Deskripsi : Mengecek 2 buah kata yang jumlah karakternya sama
*/

class  Anagram
{
   public static void main(String[] args){
	Boolean a = isAnagram ("kuda","dagtrhtku");

	System.out.print(a);

   }

   static Boolean isAnagram (String a , String b){
	int d = a.length();
	int e = b.length();

	if( d == e){
		char []chars = a.toCharArray();

		for ( int i = 0; i < d ; i++ ){
			Boolean status = false;
			int j = 0;
			while (j				if(chars [j] == b.charAt(i)){
					chars[j] = '/';
					status = true;
				}
                                j++;
			}
		}

             for (int x = 0;x
                   if (chars[x]!='/'){
				return false;
			}
		}

              return true;
	}

	else{
		return false;
	}
   }
}

Jika program dijalankan, maka hasilnya seperti gambar berikut:

Karakter pertama = “kuda
Karakter kedua = “dagtrhtku
Jumlah kedua karakter akan dibandingkan. Jika jumlah sama maka output program adalah “true”, jika jumlah berbeda maka hasil program adalah “false”.
Karena jumlah karakter “kuda” dan “dagtrhtku” berbeda, maka output adalah false.

 

Palindrom

Sama seperti Anagram, namun pada Palindrom susunan juga diperhatikan. Artinya kata1 dan kata2 akan bernilai sama jika dibalik. Misalnya ‘susu’ = ‘usus’.
Fungsi pada line 9 berfungsi untuk membalik suatu String. Kemudian pada line 23 kedua kata tersebut dibandingkan.

/*
Nama File : Palindrom.java
Programmer: www.aplysit.com
Tanggal   : 22 November 2012
Deskripsi : Mengecek 2 buah kata yang jumlah karakternya sama dan jika
            dibalik bernilai sama
*/

class Palindrom
{
	public static void main(String[] args) {
		Boolean a = isPalindrom ("anak");
		System.out.print(a);
	}

	public static String str ( String c){
		if (c.length()		  return(c);
		}
		else{
		  int d = c.length();

		  return (c.substring(d-1,d)+str(c.substring(0,d-1)));
		}

	}

       static Boolean isPalindrom (String a){
		if(a.equals(str(a))){
			return true;
		}
             else{
			return false;
		}
	}
}

Jika program dijalankan, maka hasilnya seperti gambar berikut:

Karakter = “anak
Jumlah karakter dan susunan kata akan dibandingkan. Jika karakter dan susunan katanya sama, maka output program adalah “true”, jika berbeda output program adalah “false”.
Untuk karakter “anak”, karena membandingkan ke karakter itu sendiri, maka jumlah karakternya sama, tetapi susunan katanya berbeda, maka output program adalah “false”.

 

Faktorial

 

/*
 Nama File : MetodeTambah.java
 Programmer: www.aplysit.com
 Tanggal : 22 November 2012
 Deskripsi : Menampilkan bilangan faktorial
 */
class Faktorial {

    public static void main(String[] args) {
        int c = Faktorial(4);
        System.out.println("Hasil factorial adalah : " + c);
    }

    public static int Faktorial(int a) {
        if (a < 2) {
            return (a);
        } else {
            return (a * (Faktorial(a - 1)));
        }
    }
}

 

Jika program dijalankan, maka hasilnya seperti gambar berikut:

 

Fibonanci

Fibonacci adalah barisan bilangan yang dimulai dari 0 dan 1, kemudian angka berikutnya didapat dengan cara menambahkan kedua bilangan yang berurutan sebelumnya. Dengan aturan ini, maka barisan bilangan Fibonaccci yang pertama adalah 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, …

/*
 Nama File : Fibonacci.java
 Programmer: Frans Siahaan
 Tanggal   : 22 November 2012
 Deskripsi : Menampilkan deret bilangan fibonacci
 */
public class Fibonacci {

    public static long fib(int n) {
        if (n     {
            else return fib(n-1) + fib(n-2);
        }
    }

    public static void main(String[] args) {
        int N = 7;
        for (int i = 1; i System.out.println(i + ": " + fib(i));
    }

}

Jika program dijalankan, maka hasilnya seperti gambar berikut:

 

Contoh Program

A. Program Menambah Bilangan
Program ini bertujuan untuk menambah 2 bilangan dengan memakai fungsi dan prosedur. User tidak memasukkan inputan karena angkanya sudah dibuat di kode program sehingga user tinggal menjalankan saja.

/*
 Nama File : MetodeTambah.java
 Programmer: www.aplysit.com
 Tanggal : 22 November 2012
 Deskripsi : Menambah 2 bilangan dengan Fungsi dan Prosedur
 */
import javax.swing.JOptionPane;

public class MetodeTambah {

    public static void main(String[] args) {
        tambahProsedur(10, 20);
        //tambahFungsi(5,8);
    }

    public static void tambahProsedur(int n1, int n2) {
        int tambah;
        tambah = n1 + n2;

        System.out.println("Hasil penambahan adalah " + tambah);
    }

    public static int tambahFungsi(int n1, int n2) {
        int tambah;
        tambah = n1 + n2;

        System.out.println("Hasil penambahan adalah " + tambah);
        return tambah;
    }
}

Jika program dijalankan, maka hasilnya seperti gambar berikut:


B. Program Menuliskan String

Program ini bertujuan untuk menuliskan string dari fungsi dan prosedur. User tidak memberikan inputan sehingga tinggal menjalankan program saja.

/*
 Nama File : ArrayString.java
 Programmer: www.aplysit.com
 Tanggal : 22 November 2012
 Deskripsi : Menuliskan String Dengan Menggunakan Fungsi dan Prosedur
 */
import javax.swing.JOptionPane;

public class HelloWorld {

    public static void main(String[] args) {
        // prosedur();
        fungsi();
    }

    public static void prosedur() {
        System.out.println("HelloProsedur");
    }

    public static String fungsi() {
        String hello = "Hello Fungsi";

        System.out.println(hello);
        return hello;
    }
}

Jika program dijalankan, maka hasilnya seperti gambar berikut:


C. Latihan

1. Buatlah program untuk menghitung jumlah tabungan dengan menggunakan metode. Penambahan dan pengurangan nilai saldo dilakukan di metode, sehingga main cukup memanggil metode saja.

2. Buatlah program untuk menghitung nilai pangkat suatu bilangan dengan menggunakan metode, tetapi tidak menggunakan operator perkalian. Jadi, hanya menggunakan operator tambah.

 

Like or Share This Article




COMMENTS ( 0 )
 
Keep connected with us, mobile apps available now !!