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

dokumen-dokumen yang mirip
Percabangan & Perulangan

Java Basic. Variabel dan Tipe Data. Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu informasi (nilai)

SUMBER BELAJAR PENUNJANG PLPG

MODUL DUA VARIABEL DAN TIPE VARIABEL

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

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Modul PVB-POLINEMA V1.0

Rekursif/ Iterasi/ Pengulangan

SILABUS MATA KULIAH PEMROGRAMAN JAVA

Tujuan Instruksional. Mahasiswa mampu :

Pengenalan PHP Contoh penulisan file PHP :

Algoritma Perulangan. Kuliah algoritma dan pemrograman

JAVA. Sekilas tentang java : FITUR JAVA :

Dasar Pemrograman Java

Pemrograman. Pertemuan-3 Fery Updi,M.Kom

Modul Praktikum Bahasa Pemrograman 1

24/09/2017 PERULANGAN

Pemrograman Lanjut Class String PTIIK

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

MODUL 2 STRUKTUR KONTROL

Pemrograman Berbasis Obyek. Yuliana Setiowati. Elektronika Negeri Surabaya PJJ PENS-ITS

String. String merupakan tipe data untuk menyimpan nilai berupa teks.

Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN

Variabel dengan tipe dasar hanya dapat menyimpan sebuah nilai

OPERATOR-OPERATOR DALAM JAVA

BAB V. STATEMEN KONTROL

Array. Topik. Mendeklarasikan Array Creating Array Initializing Array Array Multidimensional Array Bounds Array Resizing Copying Arrays

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

PERTEMUAN 2 ARRAY, PERCABANGAN, DAN PERULANGAN

Fungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD

Merupakan tipe data bilangan pecahan seperti 1.5, 2.1, dsb Tipe data ini memiliki ukuran 32 bit dengan panjang range 3.4 x 1038.

Array Pendeklarasian Array

MODUL II. OBJECK, PROPERTY, METHOD dan EVENT

Modul 2. [access specifier] [tipe data] [nama variabel];

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

Tipe data primitif adalah tipe data dasar yang dikenali oleh Java dan bukan merupakan class. Tipe data primitif ini dapat dikenali dengan ciri

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

FUNGSI II. Variabel Statis. Sifat variabel statis: Sintaks: static tipe_data nama_variabel; Contoh: static int angka;

Modul Praktikum 4 Pemograman Berorientasi Objek

24/09/2017 PERCABANGAN

6 Maret Structure of Java [Penyeleksian Kondisi]

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

BAB V STRUKTUR PENGULANGAN

MODUL 2 Constructor. Tujuan: Mahasiswa dapat mengenal dan memahami konsep constructor dan overloading constructor

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

Soal hari Selasa (13/10) Latihan 7 AN

JAVA BASIC PROGRAMMING Joobshet

Aplikasi Rekursif dalam Analisis Sintaks Program

Pemrograman Dasar A R R A Y

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)

BEKERJA DENGAN JAVA CLASS LIBRARY

Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator PBO. Ramos Somya

TUGAS MATA KULIAH TEKNIK KOMPILASI

9/26/2011. Tujuan. Bekerja dengan Java Class Library. Pengenalan OOP. Pengenalan OOP. Class dan Object. Enkapsulasi

Pemrograman Berorientasi Objek. Beni Suranto, S.T.

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

BAB 6. Struktur Kontrol

Modul Praktikum Bahasa Pemrograman 1

Pengenalan C++ Oleh : Dewi Sartika

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

BAB VII DASAR-DASAR PHP

Bab 8. Dasar-Dasar OOP

Pengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.

Larik/ Array int a1, a2, a3, a4, a5;

MODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi

PENGENALAN JAVA (2)

Operator, Statement kondisional, dan Iterasi pada Java

PROCEDURE DAN FUNCTION

Reserved words Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh compiler untuk keperluan pemrograman. Contoh reserved words

if (ekspresi_boolean) {

LAPORAN TERTULIS ON THE JOB TRAINING

Modul 3 Percabangan dan Perulangan

TIPE DATA, VARIABLE, dan OPERATOR DELPHI

BAB II VARIABEL DAN TIPE DATA

Pertemuan 03. Pemrograman Dasar[PTI-15001] 2012

Dasar Pemrograman. Kondisi dan Perulangan. By : Hendri Sopryadi, S.Kom, M.T.I

Method. Pemrograman Dasar Sistem Informasi PTIIK Herman Tolle

MODUL A:\VARIABEL, OPERATOR, DAN EKSPRESI

2 TIPE DATA DAN VARIABEL

Tujuan : A. Percabangan Percabangan di dalam Java terdapat 2 macam, yaitu dengan memakai if dan switch.

PEMROGRAMAN JAVA. Petunjuk Penulisan Program Token Aturan Penamaan Identifier Lingkungan /Scope dari variabel Tipe Data (i) Yoannita

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

MODUL 5 JAVA SCRIPT. Sub : PENGENALAN

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

BAB 7 Java Array. Sebagai contoh, kita memiliki tiga variabel dengan tipe data int yang memiliki identifier yang berbeda untuk tiap variabel.

Modul Praktikum 3 Pemograman Berorientasi Objek

Praktikum Dasar Pemrograman

Dasar Komputer dan Pemrograman. Konsep Tipe Data dan Operator Nama dan Nilai Data

Pemrograman Berorientasi. Class dan Obyek 2

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

LAPORAN PRAKTIKUM RESMI TIPE DATA, KONSTANTA DAN VARIABEL

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

ALGORITMA PERULANGAN

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti

Struktur Program. Rinta Kridalukmana

PEMROGRAMAN BERORIENTASI OBJEK

Algoritma dan Pemrograman

Pemrograman Lanjut. Class, dan Instance Variable. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

3. Struktur Perulangan dalam Bahasa C++

STRING INSTANSIASI KELAS : PENCIPTAAN STRING : CONSTRUCTOR :

Transkripsi:

MODUL 6 PERULANGAN Topik-topik yang dibahas pada modul ini adalah mengenai kelas String, kelas Random, dan konsep perulangan. Pertanyaan-pertanyaan yang dijawab dalam bentuk teks harus Anda kumpulkan dengan nama M06xxyyy.txt. Sementara itu, kode program harus dikumpulkan dengan format M0601xxyyy.jar. Pada modul ini, kita akan menggunakan kasus di bawah ini. Kasus ini akan kita selesaikan tahap demi tahap. Untuk itu, bacalah modul ini terlebih dahulu dengan seksama. Setelah itu, buatlah program yang diminta sesuai dengan penjelasan yang diberikan. M0601xxyyy.jar Seekor Wombat sedang menjalankan latihan untuk meningkatkan IQ-nya. Wombat dapat melakukan latihan ini selama ia masih memiliki cukup energi untuk melakukannya. Nilai energi awal dari tiap wombat adalah 100. Energi wombat akan berkurang sebesar 5 tiap kali ia melakukan latihan. IQ Wombat akan meningkat sebesar K (K adalah sebuah nilai acak, 50 K 100) setiap kali ia berlatih. Buatlah program untuk mensimulasikan program latihan ini. A. String String merupakan salah satu kelas yang disediakan oleh Java. String berfungsi untuk menyimpan sebuah deretan karakter. Variabel lokal/atribut String dideklarasikan dengan cara yang sama seperti deklarasi variabel lainnya. Sintaks pendeklarasian sebuah atribut/variabel lokal bertipe String adalah sebagai berikut: String namavariabel; 1. Instansiasi dan Inisialisasi Sebuah objek String dapat diinstansiasi menggunakan beberapa cara: a. Dengan menggunakan constructor String() Sebuah objek String yang menyimpan sebuah string kosong dapat diinstansiasi dengan menggunakan constructor tanpa parameter dari kelas ini. Contoh: String namawombat = new String(); Pada contoh di atas, variabel namawombat akan menunjuk pada objek String yang menyimpan sebuah string kosong (jumlah karakter di dalamnya adalah 0)

b. Dengan menggunakan constructor String(String original) Constructor ini akan menginstansiasi sebuah objek String baru yang memiliki isi sama dengan objek String parameternya Contoh: String namawombat = new String("Wombit The Sailorman"); Pada contoh di atas, objek String yang dibuat akan memiliki isi "Wombit The Sailorman". c. Dengan langsung melakukan assignment suatu literal String. Pada cara ini, proses instansiasi dilakukan dengan menggunakan operasi assignment, bukan dengan memanggil constructor kelas String. Java secara otomatis mengartikan operasi assignment ini sebagai pemanggilan constructor kelas String pada poin (b) Contoh: String namawombat = "Wombit The Sailorman"; 2. Method Java menyediakan beberapa method untuk tipe data ini. Berikut ini disajikan beberapa method dan penjelasannya. No Method Keterangan 1 public int length() Method ini mengembalikan panjang dari string. 2 public boolean isempty() Method ini mengembalikan nilai true jika panjang string adalah 0. 3 public char charat(int index) Method ini mengembalikan karakter yang terletak pada posisi ke-index. Catatan: posisi dihitung mulai dari 0. 4 public boolean equals(object anobject) Method ini membandingkan string dengan sebuah objek String lainnya. Method ini mengembalikan nilai true jika keduanya berisi deretan karakter yang sama. 5 public boolean equalsignorecase(string anotherstring) Method ini membandingkan string dengan objek string lain. Berbeda dengan equals, perbandingan pada method ini dilakukan dengan mengabaikan perbedaan antara karakter huruf besar dan huruf kecil. Method ini mengembalikan nilai true jika keduanya menyimpan deretan huruf yang sama, dengan mengabaikan perbedaan antara huruf besar dan kecil. 6 public int compareto(string anotherstring) Method ini membandingkan string dengan string lain secara leksikografis.

M0601xxyyy.jar (bagian 1) Nilai IQ seekor wombat ditentukan dengan cara berikut ini: Jika huruf awal dari nama wombat adalah huruf vokal, maka IQ awalnya adalah 200. Jika huruf awal dari namanya adalah huruf konsonan maka IQ awalnya adalah 205. Selanjutnya kita akan membuat method untuk menghitung nilai IQ awal dari seekor wombat. Method tersebut diberi nama setiq() dan akan dipanggil pada constructor seperti pada baris ke-10 pada kode di atas. Sebelumnya anda menuliskan kode untuk method ini, jawablah dahulu pertanyaan-pertanyaan berikut ini! 1) Untuk memeriksa apakah huruf awal dari nama wombat adalah huruf vokal, method dari kelas String yang manakah yang harus kita gunakan? 2) Pada baris ke-14, nilai dari atribut nama dibuat menjadi huruf kecil semua. Untuk apakah hal tersebut dilakukan? B. Kelas Random Java menyediakan sebuah class bernama Random yang digunakan untuk membangkitkan nilai acak. Nilai acak yang dibuat bukanlah benar-benar acak, melainkan dibangkitkan dengan rumus sehingga seolah-olah acak. Class Random mampu membuat nilai acak untuk tipe data integer, boolean, long, float, dan double

1. Constructor Salah satu constructor dari Kelas Random adalah constructor yang tidak berparameter. Berikut ini adalah contoh pemanggilan constructor dari Kelas Random untuk membuat sebuah objek dari kelas Random dan meng-assign object reference ke objek tersebut ke dalam variabel bernama rand. Random rand = new Random(); 2. Method Random menyediakan beberapa method dapat kita gunakan untuk menghasilkan nilai-nilai acak. Methodmethod tersebut adalah : No. Method Keterangan 1 public boolean nextboolean() Method ini mengembalikan sebuah nilai acak yang bernilai true atau false. 2 public double nextdouble() Method ini mengembalikan sebuah bilangan acak bertipe double dengan rentang nilai 0,0 sampai 1,0. 3 public float nextfloat() Method ini mengembalikan sebuah bilangan acak bertipe float dengan rentang nilai 0,0 sampai 1,0. 4 public int nextint() Method ini mengembalikan sebuah bilangan acak bertipe int dengan rentang nilai acak sesuai rentang nilai yang dapat disimpan dalam sebuah int. 5 public int nextint(int n) Method ini mengembalikan sebuah bilangan acak bertipe int dengan rentang 0 sampai dengan n-1. 6 public long nextlong() Method ini mengembalikan sebuah bilangan acak bertipe long. M0601xxyyy.jar (bagian 2) Pada bagian ini kita akan membuat isi dari method berlatih(). Method ini digunakan untuk mensimulasikan proses pelatihan wombat. IQ wombat akan bertambah secara acak mulai dari 50 sampai dengan 100 tiap kali method ini dipanggil Selain itu, tiap kali method ini dipanggil maka energi wombat tersebut akan berkurang sebesar 5. Sebelum menuliskan isi dari method ini, jawablah dahulu pertanyaan-pertanyaan di bawah ini! 3) Apa statement yang kita harus tuliskan jika kita ingin membangkitkan bilangan acak bertipe bilangan bulat dengan rentang 0 sampai dengan 95?

4) Apa statement yang kita harus tuliskan jika kita ingin membangkitkan bilangan acak bertipe bilangan bulat dengan rentang 65 sampai dengan 95? Berikut ini adalah isi dari method berlatih yang dijelaskan pada paragraf sebelumnya. C. Perulangan 1. While Skema perulangan while biasanya digunakan untuk melakukan perulangan yang kita belum ketahui dengan pasti jumlah perulangan yang akan dilakukan, misalnya: 1. Memeriksa semua bilangan positif untuk mencari angka paling kecil yang merupakan kelipatan 4 dan 10. 2. Memberikan makan kepada seekor wombat sampai ia merasa kenyang. Skema perulangan while adalah skema yang paling umum. Semua skema perulangan yang lain dapat dibuat dengan menggunakan skema ini. Perhatikanlah sintaks while di bawah ini! while (kondisi){ statement(s) } Keterangan: kondisi: ekspresi boolean yang nilainya menentukan apakah bagian statement(s) akan dikerjakan atau tidak. statement(s): jika kondisi bernilai true, maka statement(s) akan dieksekusi. Dengan kata lain, program akan masuk ke bagian perulangan dan mengeksekusi semua statement yang ada di dalamnya. Jika kondisi bernilai false, maka statement(s) tidak akan dieksekusi. Dengan kata lain, method akan langsung melanjutkan ke statement berikutnya setelah skema while. Setiap kali program telah menyelesaikan bagian statement(s), program akan memeriksa kembali nilai kondisi. Jika kondisi masih bernilai true, program akan mengeksekusi kembali statement(s). Hal ini dilakukan terus sampai nilai kondisi adalah false. Perhatikan bahwa di awal perulangan, skema ini langsung memeriksa nilai kondisi sebelum memasuki statement(s).

5) Berapa kalikah jumlah eksekusi minimal statement(s) dari skema while? Petunjuk: jumlah eksekusi minimal akan terjadi apabila kondisi bernilai false pada saat while mulai dijalankan. Biasakanlah untuk selalu menggunakan blok statement pada saat kita membuat perulangan walaupun kita hanya ingin menjalankan satu buah ekspresi. M0601xxyyy.jar (bagian 3) Wombat perlu berlatih berkali-kali sampai ia mencapai target IQ yang ia inginkan. Untuk itu, lakukanlah method overloading pada method berlatih dengan parameter masukan berupa target IQ yang ingin dicapai oleh wombat. Hebatnya, jika ia melakukan latihan dengan cara ini, maka energinya tidak akan berkurang sedikitpun. Modifikasilah method di atas agar, wombat tahu jumlah latihan yang ia sudah lakukan untuk mencapai target IQ! Note: Anda perlu mengubah tipe kembalian dari method ini. 2. Do While Skema do while adalah skema perulangan yang sangat mirip dengan skema while. Perbedaannya adalah bahwa kondisi pengulangan pada skema do while baru diperiksa setelah statement/blok statement miliknya selesai dieksekusi. do statement(s) while (kondisi) 6) Berapa kalikah jumlah eksekusi minimal statement(s) dari skema do while? Petunjuk: jumlah eksekusi minimal akan terjadi bila kondisi bernilai false pada saat do while mulai dieksekusi. M0601xxyyy.jar (bagian 4) Di dunia Wombat, ada wombat yang tidak mengejar target tertentu, namun ingin melakukan latihan berkalikali selama energi yang ia miliki belum bernilai lebih kecil atau sama dengan 0. Simulasikanlah proses latihan ini dengan membuat method dengan nama berlatihsampaienergi0().

7) Jika kode di atas dijalankan untuk wombat yang saat ini memiliki energi 0, apakah yang akan terjadi? Apakah IQ-nya akan tetap bertambah? 3. For Skema for biasanya digunakan untuk melakukan perulangan yang kita sudah ketahui dengan pasti jumlah perulangan yang perlu dilakukan. Contoh perulangan seperti ini adalah pada contoh masalah membuat String yang berisi perulangan nama anda sebanyak 5 kali. Contoh lain dari perulangan dengan sifat seperti ini adalah pada masalah menghitung hasil perkalian antara dua buah bilangan dengan cara melakukan penambahan secara berulang-ulang. Perhatikan sintaks for di bawah ini : for(inisialisasi; kondisi; perubahan) statement(s) Keterangan: inisialisasi: satu atau lebih statement yang dieksekusi hanya satu kali pada awal dari perulangan dan sesudah itu tidak pernah dieksekusi lagi. Biasanya diisi dengan inisialisasi variabel pencacah atau counter/iterator. kondisi: biasanya berisi ekspresi yang nilainya akan menentukan apakah bagian statement(s) akan dikerjakan atau tidak. Jika ekspresi pada kondisi menghasilkan nilai true, maka statement(s) akan dieksekusi. Dengan kata lain, program akan masuk ke bagian perulangan dan mengeksekusi semua statement yang ada di dalamnya. Jika menghasilkan nilai false, maka statement(s) tidak dieksekusi. Hal ini membuat program akan langsung melanjutkan ke statement berikutnya setelah skema for. perubahan: setelah semua statement pada bagian perulangan dieksekusi, program akan melakukan eksekusi pada bagian perubahan. Yang diubah biasanya nilai dari counter/iterator. Setelah bagian ini dijalankan, akan dilakukan lagi pengetesan terhadap kondisi. Perulangan ini akan berjalan terus sampai kondisi bernilai false. 8) Berapa kalikah jumlah eksekusi minimal statement(s) dari skema for? Petunjuk: jumlah eksekusi minimal akan terjadi bila kondisi bernilai false pada saat for mulai dieksekusi.

M0601xxyyy.jar (bagian 5) Program pelatihan peningkatan IQ telah dikembangkan lagi. Pada pengembangan kali ini, wombat dapat menentukan berapa kali ia ingin berlatih untuk meningkatkan IQ-nya, tanpa sedikitpun mengurangi energi yang ia miliki. Untuk itu, kita akan menambahkan method baru dengan nama berlatihnkali(). Sebelum anda menuliskan isi dari method ini, jawablah dahulu pertanyaan-pertanyaan di bawah ini: 9) Asumsikanlah bahwawombat ingin berlatih sebanyak 9 kali. Wombat juga mencatat banyaknya latihan yang sudah dia jalani (kita sebut nilai ini sebagai dengan nilai i). Jika pada awalnya i bernilai 0, maka pada saat i bernilai berapakah Wombat tidak perlu melakukan latihan lagi? 10) Jika ia ingin berlatih sebanyak N kali, dan i memiliki nilai awal 0, pada saat nilai i berapakah Wombat tidak perlu melakukan latihan lagi? 4. Infinite Loop dan BlueJ Sering kali, programmer membuat kesalahan yang menyebabkan program melakukan perulangan tanpa henti (infinite loop). Hal ini terjadi jika condition selalu bernilai true. Sebagai contoh, modifikasilah method berlatihnkali menjadi seperti di bawah ini! 11) Apakah yang terjadi jika method berlatihnkali dipanggil? Apa yang menyebabkan hal tersebut terjadi? Untuk me-reset JVM yang digunakan BlueJ, klik kanan pada garis merah tersebut, dan pilih Reset Java Virtual Machine.

T0601xxyyy.jar Anda diminta untuk membuat program penyelesai masalah matematika. Masalah-masalah yang ingin diselesaikan adalah: Faktorial Pangkat n buah bilangan pertama dari deret Fibonacci Untuk menyelesaikan masalah-masalah tersebut buatlah sebuah kelas dengan spesifikasi sebagai berikut: Kelas Math Method-method o int faktorial(int x): method ini dapat digunakan tanpa harus membuat objek dari kelas Math. Method ini berfungsi untuk menghitung hasil factorial dari x, dengan formula matematisnya: f(x) = x! o int pangkat(int x, int y): method ini dapat digunakan tanpa harus membuat objek dari kelas Math. Method ini berfungsi untuk menghitung hasil dari x dipangkat y, dengan formula matematisnya: f(x, y) = x y Kelas PenghasilFibonacci Kelas ini digunakan untuk menghasilkan n buah bilangan pertama dari deret Fibonacci. Adapun atribut yang dimiliki oleh kelas ini adalah sebuah bilangan bulat n, yaitu banyaknya bilangan pertama dari deret Fibonacci yang ingin ditampilkan. Berikut ini adalah method-method yang dimiliki oleh kelas ini: Constructor : constructor kelas PenghasilFibonacci memiliki sebuah parameter yang digunakan sebagai nilai awal dari atributnya.. String fibonacci(): method ini berfungsi untuk menampilkan n buah bilangan pertama dari deret Fibonacci. Misalkan n = 6, maka kembalian dari method ini memiliki format:

6 bilangan pertama deret Fibonacci: 0, 1, 1, 2, 3, 5.