Method. Pemrograman Dasar Sistem Informasi PTIIK Herman Tolle

dokumen-dokumen yang mirip
Method / Fungsi / Sub Program

Fungsi Rekursif PEMROGRAMAN DASAR. Dr. Eng. Herman Tolle, ST., MT. Sistem Informasi PTIIK UB Semester Ganjil 2014/2015

LAPORAN PRAKTIKUM PEMROGRAMAN DASAR TIPE-TIPE FUNGSI ATAU METHOD

Penyeleksi Kondisi / Percabangan

Perulangan / Looping

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

PRAKTIKUM PEMROGRAMAN LANJUT MODUL 1

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)

Percabangan & Perulangan

int fungsi_2() { int main() { fungsi_1(); fungsi_2(); return 0;

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PENGENALAN OBJECT ORIENTED PROGRAMMING

Algoritma Pemrograman 2B (Pemrograman C++)

Input - Output PEMROGRAMAN DASAR. Dr. Eng. Herman Tolle, ST., MT. Sistem Informasi PTIIK UB Semester Ganjil 2014/2015

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

Percabangan dan Perulangan

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

KONSEP DASAR. menyusunnya menjadi potongan-potongan mudah untuk ditangani dibanding. conquer.

SEKUEN, PERCABANGAN & PENGULANGAN

LAPORAN PRAKTIKUM PEMROGRAMAN DASAR PROGRAM PENYEDERHANAAN PECAHAN

Topik. 1. Statement if 2. Statement if..else.. 3. Statement if..else.. If (bertingkat ) 4. Penggunaan Input Keyboard

Mata Kuliah : Pemrograman Berbasis Objek Pertemuan : 4

SUMBER BELAJAR PENUNJANG PLPG

Belajar ArrayList di Java

Decision and Looping

Latihan Ujian Pemrograman Berorientasi Objek. Semester Genap 2016/2017

Struktur Kontrol Pemrograman Java : PERCABANGAN

Obyektif : KONTROL ALUR PROGRAM

BAB II VARIABEL DAN TIPE DATA

Modul 3: Kendali program dan teknik. penyimpanan data

LAB PEMROGRAMAN I (JAVA FUNDAMENTAL) PERTEMUAN 3 Dosen : Bella Hardiyana S. Kom

Projek Kelompok 7. package (tiopan-programmer java) public class aritmatika1{ public static void main(string[]tiw){ int calculation = 1;

Modul Praktikum 4 Pemograman Berorientasi Objek

Modul 3 Flow Control dan Input

BAB 2 Seleksi Kondisi

Pemrograman Berorientasi Objek (PBO) PERTEMUAN X (LOOPING)

PROCEDURE DAN FUNCTION

Tiga Metode Sangat Penting dalam Pemrograman Java Bagi Pemula

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

Input Nilai tanpa Case String di Java

Kelompok 7. package (tiopan-programmer java) public class aritmatika1{ public static void main(string[]tiw){ int calculation = 1;

Modul Praktikum 3 Pemograman Berorientasi Objek

MODUL PRAKTIKUM TI014 STRUKTUR DATA Season 1

2 TIPE DATA DAN VARIABEL

Pertemuan 2 Struktur Kontrol Percabangan

Metode Binnary Searching di Java Console

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

A. TEORI ARRAY 1 DIMENSI

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

IF PEMROGRAMAN LANJUT EXCEPTION. Oleh : Andri Heryandi, M.T.

Pengenalan Program Java

Array Sebagai Parameter Method

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

Belajar Rekursif di Java

BAHASA PEMROGRAMAN. Untuk SMK. Kadarisman Tejo Yuwono Totok Sukardiyono Adi Dewanto. : Ratu Amilia Avianti. Perancang Kulit

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Tiopan Indra Wahyudi R5L PROJECT KELOMPOK 7 R5L. package brekk; public class brekk{ public static void main(string[]args){

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

A. TEORI ARRAY 1 DIMENSI

Pemrograman JAVA INPUT-OUTPUT

TIPE DATA Pertemuan (K-03/L-03)

TUGAS PROGRAM DIAGONAL, VETIKAL, DAN HORIZONTAL OPENGL (MENGGUNAKAN JAVA) NAMA : SYIFA MUTIARA SARI KELAS : 3KA23 NPM :

Pemrograman. Pertemuan-3 Fery Updi,M.Kom

Pemrograman Berorientasi. Class dan Obyek 2

PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN

A. TUJUAN PEMBELAJARAN 1. Memahami mengenai konsep rekursif 2. Mampu memecahkan permasalahan dengan konsep rekursif

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman

A. TUJUAN PEMBELAJARAN 1. Memahami mengenai konsep rekursif 2. Mampu memecahkan permasalahan dengan konsep rekursif

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

Pertemuan 3 Struktur Perulangan pada Java

IKG2I4 / Software Project I

TIPE DATA PADA JAVA. Pertemuan (K-04/L-04)

PERTEMUAN 3 OBJEK DAN CLASS

Pemrograman Dasar L A T I H A N M E T H O D / F U N G S I M E T H O D R E K U R S I F

Jobsheet 09. Overloading and Overriding Method

Setelah menyelesaikan praktikum ini, mahasiswa diharapkan mampu:

MODUL 7 FUNGSI A. Tujuan. B. Petunjuk. C. Dasar Teori

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if

ARRAY. 7 th week Estu Sinduningrum ST,MT

DASAR PEMROGRAMAN JAVA. Astrid Lestari Tungadi, S.Kom., M.TI.

Java Application. Menampilkan Tulisan

PENYELEKSIAN /PERCABANGAN & PERULANGAN Part II. 5 th week Estu Sinduningrum ST,MT

Pengenalan Algoritma

Pengenalan Java, Tipe Data, Variabel dan Operator. Putu Putra Astawa

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

Algoritma dan Pemrograman

MODUL 5 PERULANGAN A. WHILE

if (ekspresi_boolean) { Pernyataan1; } else { Pernyataan2; }

Project Kelompok 3. Pemrograman Berorientasi Objek Lukman Andi W ( )

PEMROGRAMAN BERORIENTASI OBJEK

MODUL 6 PERULANGAN. A. String. 1. Instansiasi dan Inisialisasi. M0601xxyyy.jar

OPERASI PERNYATAAN KONDISI

PEMBAHASAN UJIAN TENGAH SEMESTER PEMROGRAMAN BERBASIS OBYEK Dosen : Tim Dosen PBO

LAPORAN PRAKTIKUM PEMROGRAMAN DASAR PROGRAM DENGAN KONDISI

Array 1 Dimensi pada Java

Percabangan & Perulangan

Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai


Transkripsi:

Method Pemrograman Dasar Sistem Informasi PTIIK Herman Tolle

Definisi Metode: Sekumpulan baris kode program yang mempunyai fungsi tertentu dan dapat dipanggil dari fungsi utama, Dapat dipanggil berulang kali dapat memproses data (variabel) yang dikirim dari main function

Manfaat Method / Function Prosedur Menyederhanakan struktur program Mempermudah kendali program jika bekerja dengan source code yang panjang Fungsi Mendefiniskan fungsi-fungsi tertentu Prosedur/Fungsi Dapat digunakan secara berulang dalam main program

Tipe Method Prosedur: sekumpulan proses fungsi yang tidak mengembalikan suatu nilai Fungsi: Sekumpulan proses dan mengembalikan nilai tertentu Dalam bahasa Java / C++, semua method disebut sebagai function (fungsi).

Deklarasi Method Modifier return value namamethod (parameter/argumen) { Block Statement public static void main (String[] args) { //statement-statement

Keterangan Modifier = Hak Akses Terdiri dari public, protected, private static dan non static return value = Nilai balikan jika metode melakukan suatu kalkulasi dan mempunyai nilai yang disimpan, jika tidak ada return maka menggunakan kata kunci void Parameter/Argumen = Variabel yang dilewatkan dari luar metode atau yang digunakan di dalam metode

Contoh public static void main (String[] args) { //statement-statement

Fungsi yang tidak mengembalikan nilai modifier void namamethod [parameter/argumen] { // Block Statement private static void InputData() {

Contoh: Program Menghitung Volume Kubus class VolumeKubus public static void main(string args[]) { Scanner masukan = new Scanner(System.in); // Input panjang sisi System.out.print("Masukkan panjang sisi: "); int sisi = masukan.nextint(); // hitung volume int volume = sisi*sisi*sisi; // cetak hasil System.out.printf( Volume Kubus = %d \n,volume);

Program Hitung Volume Kubus dengan Fungsi import java.util.scanner; public class VolumeKubus { private static int volume; Variabel global public static void main(string args[]) { int rusuk; rusuk = inputsisi(); volume = volumekubus(rusuk); cetakhasil(); Penyederhanaan struktur program

private static int inputsisi() { Scanner masukan = new Scanner(System.in); System.out.print("Masukkan panjang sisi: "); int sisi = masukan.nextint(); return sisi; private static int volumekubus(int sisi) { int hasil = sisi*sisi*sisi; return hasil; private static void cetakhasil() { System.out.printf("Volume Kubus = %d \n", volume);

Program Hitung Volume Kubus dengan Fungsi import java.util.scanner; public class VolumeKubus { // private static int volume; public static void main(string args[]) { int rusuk; rusuk = inputsisi(); Penyederhanaan int volume = volumekubus(rusuk); struktur program cetakhasil(volume);

private static int inputsisi() { Scanner masukan = new Scanner(System.in); System.out.print("Masukkan panjang sisi: "); int sisi = masukan.nextint(); return sisi; private static int volumekubus(int sisi) { int hasil = sisi*sisi*sisi; return hasil; private static void cetakhasil(int vol) { System.out.printf("Volume Kubus = %d \n", vol);

Memanggil Method Prosedur Tanpa Parameter: nama_method(); Prosedur Dengan Parameter nama_method (parameter1,parameter2); Fungsi yang ditampung hasilnya volume = volumekubus(rusuk); Output langsung hasil fungsi System.out.println( Hasil = + volumekubus(rusuk)); System.out.printf( Hasil = %d, volumekubus(rusuk));

Cakupan Variabel Variabel Lokal: variabel yang hanya digunakan dalam scope blok program terbatas Variabel Global: variabel yang dapat digunakan pada seluruh bagian dari program dalam satu class yang sama

Overloading Function Satu nama Fungsi tetapi memiliki beberapa implementasi yang dapat dibuat berdasarkan perbedaan parameter input atau perbedaan tipe data keluaran Misalnya: public static int max(int x, int y) { if x>y return x else return y public static double max(double x, double y) { if x>y return x else return y

public class Lingkaran { public static void main(string []args) { int r = inputjejari(); double Luas = luaslingkaran(r); double Luas2 = luaslingkaran(5.5); cetakluas(luas2); private static double luaslingkaran(int r) { return (3.14*r*r); private static double luaslingkaran(double r) { return (3.14*r*r); private static int inputjejari() { Scanner masukan = new Scanner(System.in); System.out.print("Masukkan Jejari: "); int jejari = masukan.nextint(); return jejari; private static void cetakluas(double luas) { System.out.print( Luas Lingkaran = %f, luas);

Mempermudah Kendali Program Menggunakan fungsi dan prosedur untuk kendali program berbasis menu Ulangi Input pilih Jika pilih: 1. Input Data 2. Proses Data 3. Cetak Data 9. Keluar Sampai pilih = 9 do System.out.print( Pilih Menu = ); pilih = input.nextint(); switch (pilih) { case 1: InputData(); break; case 2: UrutData(); break; case 3: CetakData(); break; case 9: CetakExit(); break; default: System.out.println( Pilihan salah ); while (pilih<>9)

Tugas Kelas D Membuat Program dengan Menu: 1. Input Data 2. Urut Data Terkecil (QuickSort) 3. Urut Data Terbesar (BubbleSort) 4. Cetak Data 5. Keluar Gunakan function (prosedur) untuk setiap item menu. Deadline: 1 Desember 2013, dikirim ke email dosen File Laporan (doc) + screenshot Format judul email: SID-nim-tugas5

Tugas Kelas F Membuat Program dengan Menu: 1. Input Data (array n) 2. Urut Terkecil (QuickSort) 3. Urut Terbesar (BubbleSort) 4. Cetak Data 5. Keluar Gunakan function (prosedur) untuk setiap item menu. Deadline: 9 Desember 2013, dikirim ke email dosen (herman.class@gmail.com) File Laporan (doc) + screenshot Format judul email & nama file doc: SIF-nim-tugas5

Tugas Kelas E Membuat Program dengan Menu: 1. Input Data 2. Urut Terkecil (QuickSort) 3. Urut Terbesar (BubbleSort) 4. Cetak Data 5. Keluar Gunakan function (prosedur) untuk setiap item menu. Deadline: 26 November 2013, dikirim ke email dosen File Laporan (doc) + screenshot Format judul email: SIE-nim-tugas5

Input Data Array Cetak Data Array INPUT Tanya Jumlah Data Ulangi Sebanyak Jumlah Data, untuk Tanya data ke-i, baca data ke-i CETAK Ulangi Sebanyak Jumlah Data, untuk Cetak data ke-i

FUNGSI REKURSIF

REKURSIF Rekursif merupakan salah satu metode dalam dunia matematika dimana definisi sebuah fungsi mengandung fungsi itu sendiri. Dalam dunia pemrograman, rekursif diimplementasikan dalam sebuah fungsi yang memanggil dirinya sendiri dan tergolong dalam dynamic programming.

FUNGSI REKURSIF Metoda rekursif adalah metoda yang memanggil dirinya sendiri. Digunakan pada fungsi yang dapat dieksekusi secara iteratif (berulang) Metoda ini memanggil dirinya sendiri sehingga dapat melakukan proses berulang-ulang. Kasus sederhana yang sering muncul adalah proses berulang-ulang menghitung hasil faktorial. 0! = 1; n! = n (n 1), n> 0!

Faktorial dari 5 adalah 1 x 2 x 3 x 4 x 5. Dari proses itu kita ketahui bahwa untuk menghitung factorial 5 manualnya seperti 1 x 2 = 2, lalu hasil 2 ini dikalikan 3 sehingga hasilnya adalah 6, lalu hasil 6 ini dikalikan lagi dengan 4 sehingga hasilnya adalah 36, lalu hasil 36 ini dikalikan dengan 5 sehingga hasilnya adalah 120. 0! = 1; n! = n (n 1), n> 0!

Contoh class faktorialdemo{ public static void main(string args[]){ System.out.println("Hitung Faktorial dengan Rekursif"); System.out.println("Faktorial dari 4 adalah : "+ fak_rekursif(4)); System.out.println("Hitung Faktorial dengan Perulangan"); System.out.println("Faktorial dari 4 adalah : "+ fak_perulangan(4));

private static int fak_perulangan(int n) { int t; int Hasil; Hasil = 1; for(t=1; t<=n; t++) Hasil *= t; return Hasil; private static int fak_rekursif(int n) { int Hasil; if(n==1 n==0) return 1; Hasil = fak_rekursif(n-1) * n; return Hasil;

Case: Deret Fibonaci Deret : 0 1 1 2 3 5 8 13 21 34 55 89... indeks: 0 1 2 3 4 5 6 7 8 9 10 11 Deret Fibonacci dimulai dengan 0 dan 1, dan hasil penjumlahan dua nilai deret sebelumnya menjadi nilai indeks yang berikut. Deret ini dapat didefinisikan rekursif sebagai berikut: fib(0) = 0; fib(1) = 1; fib(index) = fib(index-2) + fib(index-1); utk index >= 2

Latihan Buat algoritma dan kode program fungsi rekursif untuk perhitungan x pangkat y Contoh: Input : x,y Proses: x^y = 1, jika y = 0 x^y = x * x^(y-1), jika y > 0

class Pangkat { public static int pangkatrekursif(int x, int y) { if (y == 0) { return 1; else { return x * pangkatrekursif(x, y - 1); public static void main(string[] args) { System.out.println("10 dipangkatkan 3 = + pangkatrekursif(10,3));

Fraktal

FPB (Faktor Persekutuan Terbesar) dalam bahasa inggris dinamakan Greatest Common Divisor (GCD). FPB dari dua bilangan adalah bilangan bulat positif terbesar yang membagi habis kedua bilangan. Bilangan yang dibandingkan tersebut berupa bilangan bulat atau integer. Dalam definisi tersebut yaitu membagi habis kedua bilangan bulat positif, berarti harus dihitung modulo-nya (sisa hasil bagi dari kedua bilangan).

FPB x dan y memiliki pola sebagai berikut: Jika x dibagi y sama dengan 0, maka FPB dari x dan y adalah y Jika x dibagi y tidak sama dengan 0, maka y dibagi dengan sisa pembagian x dan y Formulanya adalah: x % y = 0, FPB x dan y adalah y x % y!= 0, maka y dibagi dengan hasil dari (x % y)