Cara membuat fungsi dan prosedur pada java

19,401 views

Published on

2 Comments
8 Likes
Statistics
Notes
No Downloads
Views
Total views
19,401
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
592
Comments
2
Likes
8
Embeds 0
No embeds

No notes for slide

Cara membuat fungsi dan prosedur pada java

  1. 1. Cara Membuat Fungsi dan Prosedur Pada Java Pada dasarnya, prosedur dan fungsi memiliki pengertian yang hampir sama, yaitu berupa subprogram yang merupakan kumpulan dari beberapa baris syntax agar ketika anda ingin menggunakannya di lain waktu, anda hanya perlu memanggil sub-program tersebut. Perbedaannya, bila prosedur tidak memerlukan nilai balik (return value) sedangkan fungsi wajib memberikan nilai balik (return value). Untuk penulisan syntax nya sendiri adalah sebagai berikut : - Fungsi static int tambah(nama fungsi)(int a, int b){ i = a + b; return i; } - Prosedur static void inputData(){ Scanner sc = new Scanner(System.in); System.out.println("Masukkan bil pertama : "); int a = sc.nextInt(); System.out.println("Masukkan bil kedua : "); int b = sc.nextInt(); tambah(); System.out.println("Hasil penjumlahan adalah : "+i); } Anda dapat melihat perbedaan dalam penulisannya, yaitu pada fungsi tidak menggunakan "void" sedangkan pada prosedur menggunakan "void". Sedangkan untuk memanggil fungsi dan prosedur tersebut kita perlu "syntax main" misalnya seperti berikut : public static void main(String args[]){ inputData(); } PROSEDUR DAN FUNGSI Sub Program (Modul) 1. Sebuah program yang kompleks umumnya akan didekomposisi menjadi beberapa sub program yang lebih sederhana. 2. Sub program itu disebut juga modul terkadang bersifat independen terhadap program utama. 3. Pemrograman yang menggunakan modul disebut dengan pemrograman modula
  2. 2. 4. Modul dapat digunakan oleh program lain yang membutuhkannya. 5. Dalam bahasa pemrograman modul dapat dikategori menjadi prosedur dan fungsi. Prosedur 1. Prosedur adalah program yang mengerjakan aktivitas yang spesifik yang menghasilkan efek netto 2. Efek netto yaitu perubahan kondisi awal menjadi kondisi akhir setelah prosedur dijalankan 3. Prosedur bukan program yang berdiri sendiri , sehingga untuk menjalankan prosedur dengan dipanggil di program utama. Contoh Program Tanpa Prosedur Input(uts, uas, tugas) nilaiAkhir_0.3uts+o.5uas+0.2tugas Output(nilaiAkhir) If nilaiAkhir>=85 then nilaiHuruf_’A’ Else if If nilaiAkhir>=70 then nilaiHuruf_’B’ Else if If nilaiAkhir>=50 then nilaiHuruf_’C’ Else if If nilaiAkhir>=30 then nilaiHuruf_’D’ Else nilaiHuruf_’E’ End If Output(nilaiHuruf) Prosedur Hitung Nilai Procedure HITUNGNILAI Input(uts, uas, tugas) nilaiAkhir_0.3uts+o.5uas+0.2tugas Output(nilaiAkhir) Prosedur Nilai Huruf Procedure NILAIHURUF If nilaiAkhir>=80 then nilaiHuruf_’A’
  3. 3. Else if If nilaiAkhir>=70 then nilaiHuruf_’B’ Else if If nilaiAkhir>=50 then nilaiHuruf_’C’ Else if If nilaiAkhir>=30 then nilaiHuruf_’D’ Else nilaiHuruf_’E’ End If Output(nilaiHuruf) Penulisan Prosedur dalam Java _ Prosedur dapat ditulis diatas program utama maupun Dibawahnya _ Dengan format public static void namaProsedur(){ ... } _ Misalnya public static void HitungLuas(){ int panjang=10; int lebar=5; System.out.println(“Luas = “+panjang*luas); } CONTOH : 1. import java.util.Scanner; 2. public class ContohProsedur{ 3. //deklarasi variabel global yang bisa dikenali disemua bagian program 4. public static double nilaiAkhir=0; 5. public static char nilaiHuruf=' '; 6. //prosedur Hitung Nilai 7. public static void HitungNilai(){ 8. Scanner keyboard=new Scanner(System.in); 9. System.out.print("Nilai UTS : "); 10. double uts = keyboard.nextDouble(); 11. System.out.print("Nilai UAS : ");
  4. 4. 12. double uas = keyboard.nextDouble(); 13. System.out.print("Nilai Tugas : "); 14. double tugas = keyboard.nextDouble(); 15. nilaiAkhir=0.3*uts+0.5*uas+0.2*tugas; 16. System.out.printf("Nilai Akhir %.2f : n" ,nilaiAkhir); 17. } 18. //Prosedur Nilai Huruf 19. public static void NilaiHuruf(){ 20. if (nilaiAkhir>=85) nilaiHuruf='A'; 21. else if (nilaiAkhir>=70) nilaiHuruf='B'; 22. else if (nilaiAkhir>=50) nilaiHuruf='C'; 23. else if (nilaiAkhir>=30) nilaiHuruf='D'; 24. else nilaiHuruf='E'; 25. System.out.println("Nilai Huruf : "+nilaiHuruf); 26. } 27. //Program Utama 28. public static void main(String[] args){ 29. HitungNilai(); 30. NilaiHuruf(); 31. } 32. } OUTPUT Identifier Global dan Lokal 1. Konsekuensi penggunaan sub program adalah adanya identifier (variabel atau konstanta) global dan lokal 2. Identifier global adalah identifier yang dikenali di semua bagian program, pada program diatas contohnya adalah nilaiAkhir dan nilaiHuruf 3. Identifier lokal adalah identifier yang hanya dikenali oleh sub program yang mendeklarasikannya, contohnya adalah uts, uas dan tugas yang hanya dikenali oleh prosedur hitungNilai.
  5. 5. Fungsi 1. Fungsi adalah sub program yang mengembalikan (return) sebuah nilai bertipe data primitif (int, float, double, boolean, string, atau char) 2. Mirip dengan fungsi dalam matematika yang tugasnya mengubah nilai input menjadi nilai output 3. Umumnya fungsi disertai penggunaan parameter untuk input data Fungsi Hitung Nilai Function HITUNGNILAI(a,b,c: double): double na=a*0.3+b*0.5+c*0.2; return(na) Fungsi Nilai Huruf Function NILAIHURUF(na: double): char If nilaiAkhir>=80 then nilaiHuruf_’A’ Else if If nilaiAkhir>=70 then nh_’B’ Else if If nilaiAkhir>=50 then nh_’C’ Else if If nilaiAkhir>=30 then nh_’D’ Else nh_’E’ End If return(nh) Program Utama Input(uts, uas, tugas) nilaiAkhir = HITUNGNILAI(uts,uas,tugas) Output (nilaiAkhir) Output (NILAIHURUF(nilaiAkhir)) CONTOH 1. import java.util.Scanner;
  6. 6. 2. public class ContohFungsi{ 3. //Fungsi Hitung Nilai 4. public static double HitungNilai(double a, double b,double c){ 5. double na = a*0.3+b*0.5+c*0.2; 6. return (na); 7. } 8. //FungsiNilai Huruf 9. public static char NilaiHuruf(double na){ 10. char nh = ' '; 11. if (na>=85) nh='A'; 12. else if (na>=70) nh='B'; 13. else if (na>=50) nh='C'; 14. else if (na>=30) nh='D'; 15. else nh='E'; 16. return(nh); 17. } 18. //Program Utama 19. public static void main(String[] args){ 20. Scanner keyboard = new Scanner(System.in); 21. System.out.print("Nilai UTS : "); 22. double uts = keyboard.nextDouble(); 23. System.out.print("Nilai UAS : "); 24. double uas = keyboard.nextDouble(); 25. System.out.print("Nilai Tugas : "); 26. double tugas = keyboard.nextDouble(); 27. double nilaiAkhir = HitungNilai(uts,uas,tugas); 28. System.out.printf("Nilai Akhir : %.2f n",nilaiAkhir); 29. System.out.println("Nilai Huruf : "+NilaiHuruf(nilaiAkhir)); 30. 31. } OUTPUT }
  7. 7. Parameter Parameter dapat digunakan baik di fungsi maupun prosedur. Ada 2 jenis parameter yaitu parameter aktual dan parameter formal. 1. Parameter aktual digunakan saat memanggil prosedur, melalui parameter ini data dikirim baik berupa konstanta atau variabel 2. Parameter formal digunakan pada saat mendeklarasikan nama prosedur, melalui parameter ini data diterima dari parameter aktual, selalu berupa variabel, melakukan casting otomatis dengan urutan → byte → short → int → long →float → double Seperti halnya bahasa pemograman yang lain java juga memiliki fungsi dan prosedur yang berguna untuk memudahkan dan mengoptimalkan program. Prosedur Prosedur adalah kumpulan ekspresi-ekspresi algoritma yang berguna untuk menjalankan proses tertentu. Prosedur sudah banyak dikenal mulai dari bahasa mesin hingga bahasa level tinggi (Query). Dalam bahasa Java prosedur biasanya diawali dengan kata “void”. Dan kebanyakan aplikasi berjalan melalui prosedur. Fungsi Fungsi dan prosedur memiliki kesamaan dalam bentuknya hanya saja fungsi memiliki nilai yang bisa dihasilkan kembali (Dikembalikan). Fungsi dibuat biasanya untuk menyederhanakan sebuah operasi. Ketika dua buah prosedur membutuhkan sebuah operasi yang sama maka operasi tersebut dapat ditulis kedalam fungsi sehingga bisa menghemat waktu penulisan tanpa harus menulis dua kali. Dalam bahasa Java fungsi biasanya diawali dengan tipe data (int, char, bool). Dan diakhir statementnya terdapat kata “return”. Nilai yang direturn harus nilai yang sama seperti yang dideklarasikan di nama fungsi. perhatikan contoh dari prosedur dan fungsi dibawah ini : public class FunctionProcedure { public static void main(String[] args) { int T, n; n = Nilai(4, 4); //Fungsi Nilai dipanggil T = n * 100; System.out.println(T); } public static int Nilai(int a, int b) {
  8. 8. int n; b = b * 2; n = a + b; return n; } } Program diatas menggunakan fungsi nilai yang menghitung nilai a dan b setelah dihitung nilai hasil akan digunakan oleh prosedur main dan prosedur main akan menampilkan hasilnya. Dalam pemrograman kita mengenal method, fungsi, class, dan prosedur tetapi kita tidak tau dan belum mengerti apa itu maksudnya. Postingan kali ini saya memaparkan apa pengertian itu semua.. Prosedur Prosedur adalah kumpulan ekspresi-ekspresi algoritma yang berguna untuk menjalankan proses tertentu. Prosedur sudah banyak dikenal mulai dari bahasa mesin hingga bahasa level tinggi (Query). Dalam bahasa Java prosedur biasanya diawali dengan kata “void”. Dan kebanyakan aplikasi berjalan melalui prosedur. Fungsi Fungsi dan prosedur memiliki kesamaan dalam bentuknya hanya saja fungsi memiliki nilai yang bisa dihasilkan kembali (Dikembalikan). Fungsi dibuat biasanya untuk menyederhanakan sebuah operasi. Ketika dua buah prosedur membutuhkan sebuah operasi yang sama maka operasi tersebut dapat ditulis kedalam fungsi sehingga bisa menghemat waktu penulisan tanpa harus menulis dua kali. Dalam bahasa Java fungsi biasanya diawali dengan tipe data (int, char, bool). Dan diakhir statementnya terdapat kata “return”. Nilai yang direturn harus nilai yang sama seperti yang dideklarasikan di nama fungsi. Class Didalam Java kita mengenal yang namanya Object Oriented Programming (OOP). Java adalah bahasa yang murni berorientasi object sehingga kita tidak bisa mendefinisikan object diluar class atau memakai class itu secara langsung. Mungkin Anda pernah mendengar kata class sebelumnya dalam bahasa pemrograman.Class diumpamakan seperti cetakan yang berguna untuk mencetak suatu object. Contoh dari sebuah cetakan/class tersebut misalnya cetakan dari sebuah mobil sedan. Mobil sedan tentunya mempunyai konsep. Konsep inilah yang akan dipakai untuk membentuk/mencetak hingga menjadi mobil sedan. Oleh karena itu konsep bisa berarti class atau cetakan. Contoh cetakan/class/konsep dari mobil sedan adalah sebagai berikut : Mempunyai mesin
  9. 9. Mempunyai roda sebanyak 4 yaitu 2 didepan dan 2 dibelakang Mempunyai setir Mempunyai body atau kerangka dengan panjang, lebar dan tinggi Mempunyai warna Mempunyai perseneling Mempunyai knalpot Sampai akhirnya didalam pabrik, cetakan/class/konsep tersebut dapat digunakan untuk membuat banyak object baru tentunya dengan berbeda nama/merk. Class juga bisa diilustrasikan atau diumpamakan dengan makhluk hidup. Contohnya adalah hewan mamalia yaitu kucing. Didalam ilmu biologi, kucing tergolong dalam class hewan pemakan daging atau karnivora dan tentunya mempunyai bentuk atau konsep. Tuhan Yang Maha Kuasa sudah sudah menentukan bentuk daripada class kucing tersebut. Class kucing mempunyai konsep sebagai berikut : Mempunyai kaki sebanyak 4 yaitu 2 didepan dan 2 dibelakang Mempunyai suara yaitu “meong” atau “miaw” Mempunyai golongan/family yaitu hewan bertulang belakang atau vertebrata dan termasuk golongan mamalia pemakan daging atau karnivora Nah didalam Java, class mempunyai makna yang sama dengan ilustrasi diatas. Didalam Java kita tidak bisa sembarangan membuat, menciptakan atau mewujudkan suatu object tanpa didasarkan pada konsep/cetakan/class. Oleh karena itu Java adalah bahasa pemrograman yang murni berorientasi object atau dengan kata lain semua pekerjaan yang dikerjakan menggunakan bahasa Java harus dilakukan didalam class. Method Metode menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat serta berbagai operasi yang dapat dilakukan objek sepanjang hidupnya. Metode memiliki 4 (empat) bagian dasar : 1. Nama metode 2. Tipe Objek atau tipe primitive yang dikembalikan metode. 3. Daftar parameter. 4. Badan atau isi metode. Tiga bagian pertama mengindikasikan informasi penting tentang metode itu sendiri. Dengan kata lain, nama metode tersebut=metode lain dalam program. Dalam java kita dapat memiliki metode-metode berbeda yang memiliki nama sama tetapi berbeda tipe kembalian atau daftar argumennya, sehingga bagian-bagian definisi metode ini menjadi penting. Ini disebut overloading metode. Untuk menjalankan program yang memiliki sifat polymorphism tersebut, diperlukan suatu kemampuan overloading, yaitu suatu kemampuan untuk menentukan fungsi yang mana yang harus digunakan atau dijalankan jika terdapat nama fungsi yang sama. Polimorfisme bisa diartikan seperti kemampuan suatu variable untuk mengubah perangai sesuai dengan objek hasil instansiasi yang digunakan. Polimorfisme membiarkan lebih dari 1 objek dari sub class sub class dan diperlakukan sebagai objek dari super class tunggal Contoh: Mahasiswa cowok = new anakSI();
  10. 10. cowok.methodKU( Denni ); Mahasiswa cewek = new anakTI(); cewek.mothodKU( Dragon ); Outputnya: Methodku dengan parameter dengan nilai Denni di class anak SI telah dipanggil Methodku dengan parameter dengan nilai Dragon di class anakTI telah dipanggil Perbedaan Fungsi dan Prosedure Seperti yang kita ketahui bahwa dalam bahasa pemrograman apapun pastilah memiliki istilah yang disebut dengan function dan procedure. Tidak peduli kamu menggunakan bahasa pemrograman apapun, seperti Java, C++, Visual Basic, dan bahasa pemrograman lainnya, pastilah mengenal kedua istilah ini. Lalu apa yang membedakan antara functiond dan procedure, dan kapan kita perlu menggunakan function dan kapan kita perlu menggunakan procedure ? Oke saya akan mencoba membahasnya. Perbedaan antara function dan procedure adalah : kalau function dia akan mengembalikan suatu nilai pada pemanggilnya, sedangkan kalau procedure dia tidak akan mengembalikan nilai apapun pada fungsi pemanggilnya. Untuk lebih jelasnya saya akan memberikan contoh studi kasus program untuk menghitung luas persegi panjang dalam bahasa Java. Berikut ini merupakan source code procedure yang digunakan untuk menghitung luas persegi panjang public void HitungLuasPersegiPanjang(int p, int l) { int luasPersegiPanjang; luasPersegiPanjang = p * l; System.out.println(“Luas persegi panjang = ” + ” ” + luasPersegiPanjang); } Berikut ini merupakan source code function untuk menghitung luas persegi panjang public int HitungLuasPersegiPanjang(int p, int l) { int luasPersegiPanjang; luasPersegiPanjang = p * l; return luasPersegiPanjang; } Perhatikan kata yang saya cetak tebal baik pada source code procedure maupun source code function. Seperti yang telah disebutkan diatas bahwa procedure tidak mengembalikan suatu nilai apapun pada fungsi pemanggilnya sehingga tipe data yang digunakan adalah void. Sedangkan tipe data yang digunakan pada function adalah tipe data sesuai dengan nilai yang dikembalikan. Pada kasus ini tipe data yang digunakan untuk menghitung luas persegi panjang adalah integer (dideklarasikan sebagai int di Java). Perbedaan berikutnya, kalau pada function terdapat statement return yang berguna untuk mengembalikan nilai pada
  11. 11. pemanggilnya. Sedangkan pada procedure tidak terdapat statement return. Pada procedure HitungLuasPersegiPanjang, setelah nilai luas persegi panjang didapatkan, maka nilai luasnya akan langsung dicetak. Hal ini ditandai dengan statement System.out.println. Perbedaan berikutnya adalah cara pemanggilan. Untuk procedure pemanggilan dilakukan dengan memanggil nama procedurenya saja. Untuk function pemanggilan harus menggunakan variabel untuk menampung nilai yang dikembalikan oleh function. Untuk lebih jelasnya coba perhatikan cara pemanggilan procedure dan function dibawah ini Cara memanggil procedure HitungLuasPersegiPanjang(p, l); Cara memanggil function luas = HitungLuasPersegiPanjang(p, l); Untuk pemanggilan procedure cukup dituliskan nama procedurenya, yaitu HitungLuasPersegiPanjang lengkap dengan parameter procedurenya yaitu p, dan l. Sedangkan untuk memanggil function HitungLuasPersegiPanjang, maka nilai luas persegi panjang yang dikembalikan oleh function ini harus ditampung terlebih dahulu di variabel yang bernama luas. Dimana variabel ini harus memiliki tipe data yang sama dengan tipe data function, yaitu integer. Nama function harus ditulis lengkap dengan parameter functionnya, yaitu p dan l. Nach kapan waktunya kita menggunakan function dan procedure ?. Kamu dapat menggunakan function apabila kamu membuat suatu method yang perlu mengembalikan nilai pada pemanggilnya. Sedangkan kamu perlu menggunakan procedure apabila method tersebut tidak perlu untuk mengembalikan nilai ke pemanggilnya. Pada contoh kasus HitungLuasPersegiPanjang ini method yang lebih cocok dipakai adalah function daripada procedure. Hal ini disebabkan karena method ini digunakan untuk menghitung luas persegi panjang, dimana nilai yang perlu dikembalikan pada fungsi pemanggilnya adalah nilai luas persegi panjang. Oke sekian saja posting kali ini. Semoga penjelasan saya mudah dimengerti dan dapat menambah wawasan kamu. Prosedur import java.io.*; class demosepeda { public static void main (String[ ] args) { sepedagunung spd = new sepedagunung();
  12. 12. spd.ubahgear(10); spd.tambahspeed(50); spd.ubahsadle(15); spd.tampil(); spd.tampilsadle(); } } import java.io.*; class sepedagunung extends sepeda { int sadle = 0; public void ubahsadle (int tinggi) { sadle = sadle + tinggi; } public void tampilsadle() { System.out.println (“Tinggi sadle sepeda = ” + sadle); } } import java.io.*; class sepeda { int speed = 0; int gear = 0;
  13. 13. public void ubahgear (int ubah) { gear = gear + ubah; } public void tambahspeed (int tambah) { speed = speed + tambah; } public void tampil() { System.out.println (“Gear = ” + gear + ” kecepatan = ” + speed); } } import java.io.*; class demomobil { public static void main (String[] args) { bus spd = new bus(); spd.ubahgear(7); spd.tambahspeed(150); spd.tampil(); spd.hiduptv(); spd.carichanel(); spd.tampilgambar();
  14. 14. } } import java.io.*; class bus extends mobil { public void hiduptv () { System.out.println (“TV Dihidupkan”); } public void carichanel () { System.out.println (“Chanel sudah dicari”); } public void tampilgambar () { System.out.println (“Gambar sudah ditampilkan”); } } import java.io.*; class mobil { int speed = 0; int gear = 0; public void ubahgear (int ubah) {
  15. 15. gear = gear + ubah; } public void tambahspeed (int tambah) { speed = speed + tambah; } public void tampil() { System.out.println (“Gear = ” + gear + ” kecepatan = ” + speed); } } import coba.latihanexe; import coba.latihanexe2; class packagess { public static void main (String[] arg) { latihanexe lat = new latihanexe(); latihanexe2 lat2 = new latihanexe2(); lat.tampil(); lat2.tampil2(); } } package coba;
  16. 16. public class latihanexe { public void tampil() { System.out.println (“Belajar membuat package”); } } package coba; public class latihanexe2 { public void tampil2() { System.out.println (“Belajar membuat package 2″); } } import java.io.*; class matematika { //bilangan bulat public int tambah (int x, int y) { return x + y; } public int kurang (int x, int y)
  17. 17. { return x – y; } public int kali (int x, int y) { return x * y; } public int bagi (int x, int y) { return x / y; } //bilangan pecahan public double tambah (double x, double y) { return x + y; } public double kurang (double x, double y) { return x – y; } public double kali (double x, double y) { return x * y; } public double bagi (double x, double y)
  18. 18. { return x / y; } } class tulis { public void tampil() { System.out.println(“Hallo”); } } class panggilan { public static void main (String args[]) { tulis x = new tulis(); x.tampil(); //manggil class dari file matematika matematika m = new matematika(); //bilangan bulat System.out.println (“Hasil = ” + m.tambah (5,5)); System.out.println (“Hasil = ” + m.kurang (5,5)); System.out.println (“Hasil = ” + m.kali (5,5)); System.out.println (“Hasil = ” + m.bagi (5,5)); //bilangan pecahan
  19. 19. System.out.println (“Hasil = ” + m.tambah (5.5,2.5)); System.out.println (“Hasil = ” + m.kurang (5.5,2.5)); System.out.println (“Hasil = ” + m.kali (5.5,2.5)); System.out.println (“Hasil = ” + m.bagi (5.5,2.5)); } } Cara Membuat Fungsi dan Prosedur Pada Java Maaf ya teman-teman pembaca setia blog Mari Belajar, sudah lama saya belum menulis artikel baru pada blog ini. Baiklah, kali ini saya akan menjelaskan sedikit tentang prosedur dan fungsi pada java. Pada dasarnya, prosedur dan fungsi memiliki pengertian yang hampir sama, yaitu berupa subprogram yang merupakan kumpulan dari beberapa baris syntax agar ketika anda ingin menggunakannya di lain waktu, anda hanya perlu memanggil sub-program tersebut. Perbedaannya, bila prosedur tidak memerlukan nilai balik (return value) sedangkan fungsi wajib memberikan nilai balik (return value). Untuk penulisan syntax nya sendiri adalah sebagai berikut : - Fungsi static int tambah(nama fungsi)(int a, int b){ i = a + b; return i; } - Prosedur static void inputData(){ Scanner sc = new Scanner(System.in); System.out.println("Masukkan bil pertama : "); int a = sc.nextInt(); System.out.println("Masukkan bil kedua : "); int b = sc.nextInt(); tambah(); System.out.println("Hasil penjumlahan adalah : "+i); } Anda dapat melihat perbedaan dalam penulisannya, yaitu pada fungsi tidak menggunakan "void" sedangkan pada prosedur menggunakan "void". Sedangkan untuk memanggil fungsi dan prosedur tersebut kita perlu "syntax main" misalnya seperti berikut :
  20. 20. public static void main(String args[]){ inputData(); } Mungkin sementara ini hanya seperti itu, bila ada pertanyaan silahkan tinggalkan komentar atau hubungi saya di contact us. Terima Kasih dan semoga bermanfaat

×