56
MOBILE SYSTEM & SOFTWARE LABORATORY Computer System Engineering Diponegoro University Semarang JL. Prof.Sudharto, SH – Tembalang Semarang Jawa Tengah BAB 7 PEMROGRAMAN JAVA BAGIAN I 7.1 Tujuan 1. Memahami dasar-dasar pemrograman java 2. Memahami pernyataan penyeleksian kondisi IF-THEN- ELSE pada java 3. Memahami pernyataan penyeleksian kondisi SWITCH- CASE pada java 4. Memahami pernyataan perulangan WHILE dan DO…WHILE pada java 5. Memahami pernyataan perulangan FOR pada java

java1.docx

Embed Size (px)

Citation preview

Page 1: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

BAB 7

PEMROGRAMAN JAVA BAGIAN I

7.1 Tujuan

1. Memahami dasar-dasar pemrograman java

2. Memahami pernyataan penyeleksian kondisi IF-THEN-ELSE pada java

3. Memahami pernyataan penyeleksian kondisi SWITCH-CASE pada java

4. Memahami pernyataan perulangan WHILE dan DO…WHILE pada java

5. Memahami pernyataan perulangan FOR pada java

Page 2: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

7.2 Dasar Teori

7.2.1 Pengenalan Pemrograman Java dan Instalasi

7.2.1.1 Sejarah Java

Java dipelopori oleh James Gosling, Patrick Naughton, Chris

Warth, Ed Frank, dan Mike Sheridan dari Sun Microsystems, Inc pada

tahun 1991. Mereka membutuhkan kurang lebih 18 bulan untuk membuat

versi pertamanya. Bahasa ini pada awalnya disebut “Oak” tapi kemudian

diubah menjadi “Java” pada tahun 1995 karena nama Oak telah dijadikan

hak cipta dan digunakan sebagai bahasa pemrograman lainnya. Antara

pembuatan Oak pada musim gugur 1992 hingga diumumkan ke publik

pada musim semi 1995, banyak orang yang terlibat dalam desain dan

evolusi bahasa ini. Bill Joy, Arthur van Hoff, Jonathan Payne, Frank

Yellin, dan Tim Lindholm merupakan kontributor kunci yang

mematangkan prototipe aslinya.

7.2.1.2 Bahasa Pemrograman Java

Java telah digunakan dalam banyak hal dan telah membuktikan

keberadaannya pada abad ke 21. Saat ini, Java digunakan bermacam jenis

aplikasi seperti aplikasi embedded, aplikasi keuangan, desktop, simulasi

pesawat, pemrosesan citra, game, aplikasi perusahaan terdistribusi yang

disebut J2EE dan masih banyak lagi.

Java Virtual Machine (JVM) Java Virtual Machine merupakan

aplikasi sederhana yang ditulis dalam bahasa C untuk mengeksi program

yang ditulis dalam bahasa Java. Pada saat kompilasi (perubahan dari

bahasa tingkat tinggi ke bahasa lebih rendah), program tersebut diubah

menjadi KODE BYTE. Kemudian pada saat eksekusi, JVM membaca

kode byte tersebu dan mengubahnya menjadi bahasa mesin yang

dimengerti oleh sistem operasi tempat program tersebut dijalankan.

Karena JVM sangat bergantung pada platformnya (bahasa mesin

merupakan bahasa level rendah yang hanya dimengerti oleh suatu mesin

Page 3: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

tertentu, misalnya Intel, tapi tidak dapat dimengerti oleh mesin lain, seperti

Macintosh), byte code ini dapat dibuat untuk terbebas dari kungkungan

platform tertentu. Code byte yang dihasilkan dalam proses kompilasi

bahasa Java akan selalu sama untuk setiap sistem operasi atau jenis

mesinnya, tetapi JVM akan mengubah kode byte tersebut menjadi bahasa

mesin tujuannya. Just In Time Compiler (JIT) Meskipun Java didesain

untuk diinterpretasi, secara teknis tidak ada yang menghalangi Java untuk

dikompilasi menjadi bahasa mesin seperti bahasa-bahasa pemrograman

lainnya. Sun menyediakan kompiler Just In Time Compiler (JIT) untuk

mengkompilasi kode byte itu menjadi bahasa mesinnya pada saat yang

bersamaan dengan eksekusinya. Walaupun demikian, pendekatan JIT ini

menghasilkan kemampuan yang lebih dibandingkan dengan interpretasi

biasa.

7.2.1.3 Instalasi NetBean

1. Jalankan file instalasi dan pilih customize untuk memilih

fitur yang akan diinstal atau pilih next untuk

melanjutkan proses instalasi.

Gambar 7.1 Tampilan awal instalasi netbeans

2. Centang I accept the terms in the license agreement dan

pilih next.

Page 4: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.2 Konfirmasi persetujuan program

3. Centang I accept the terms in the license

agreement,Install JUnit untuk menginstall JUnit atau

centang Do not install JUnit jika tidak ingin

menginstalnya.

Gambar 7.3 Konfirmasi penginstalan JUnit

4. Pilih tempat untuk penginstalan Netbeans dan JDK Java

kemudian pilih next.

Page 5: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.4 Pemilihan tempat instalasi program

5. Pilih juga tempat instalasi GlassFish 3.1 jika ingin

menginstalnya dan klik next.

Gambar 7.5 Pemilihan tempat instalasi GlassFish

6. Setelah itu akan tampil keterangan di mana kita memilih

tempat untuk instalasi program yang telah kita tentukan.

Klik next untuk memulai instalasi.

Page 6: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.6 Keterangan program yang akan diinstal

7. Tunggu sampai proses instalasi program Netbeans

selesai.

Gambar 7.7 Proses instalasi program

8. Proses Instalasi program telah selesai. Centang

Contribute to the NetBeans project by providing

anonymous usage data untuk menghubungkan

menggunakan fitur komunikasi data pada NetBeans

Page 7: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

dengan servernya atau klik finish untuk finalisasi proses

instalasi

Gambar 7.8 Finalisasi proses instalasi

7.2.2 Variabel dan Tipe Data dalam Java

Jenis-jenis Variabel Java memiliki beberapa jenis variabel yang

dapat dikelompokkan sebagai berikut :

1. Instance Variables (tidak statis). Objek menyimpan variabel

yang tidak dideklarasikan dengan kata kunci static dalam

kategori non-statis, atau dapat berubah-ubah. Suatu kelas dapat

dijelmakan ke dalam beberapa objek. Nilai yang terkandung

dalam variabel tak-statis ini berbeda untuk setiap objeknya.

2. Class Variables (statis). Variabel ini bagian integral dari suatu

kelas, dan tidak ada satu objek pun yang dapat menyatakan

kepemilikan atas variabel ini. Variabel yang dideklarasikan

sebagai statis digunakan bersama oleh semua objek. Variabel

ini lebih bersifat global yang nilainya sama untuk setiap objek

pada kelas yang bersangkutan.

3. Local Variables. Variabel ini didefinisikan di dalam suatu

metod dalam suatu prosedur. Variabel ini bersifat lokal karena

hanya dapat diakses oleh metoda atau prosedur tersebut.

Page 8: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

4. Parameter. Paramater atau argumen adalah variabel yang

digunakan pada saat suatu metoda atau prosedur dipanggil.

Parameter berguna untuk memberikan nilai awal untuk

diteruskan (pass) ke dalam suatu prosedur atau metoda.

7.2.2.1 Literal

Pada bagian ini akan dijelaskan tentang literal, yaitu

rangkaian kata atau huruf yang menyatakan suatu nilai.

Misalnya int angka = 10; Pada pernyataan di atas, yang

dinamakan literal adalah 10, karena 10 berarti bilangan bulat

atau integer. Pada bahasa pemrograman java, terdapat

beberapa jenis literal yang melambangkan bilangan bulat, riil,

kalimat, atau Boolean yang di antara lain adalah sebagai

berikut :

1. Literal Bilangan

Bulat Bilangan bulat dapat dilambangkan dalam

beberapa bentuk. Bilangan bulat biasa dilambangkan dengan

deretan angka yang dimulai dengan angka yang bukan nol. int angka = -10;

2. Literal Karakter

Kita dapat melambangkan suatu karakter dengan tanda

petik tunggal misalnya ‘a‘ atau ‘3′ atau ‘=‘. Suatu karakter

dapat juga dilambangkan dengan kode ASCII nya. Caranya

dengan memulainya dengan \u00 (garis miring terbalik)

kemudian diikuti dengan kode ASCII nya dalam bentuk

heksadesimal. // huruf 'A' dalam ASCII

char huruf = '\u0041';

3. Literal Boolean

Page 9: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Literal Boolean Nilai true dan false pada java merupakan

literal boolean. Suatu variabel bertipe boolean hanya dapat

memiliki nilai true atau false. boolean ok = true;

Ingat bahwa boolean true atau false TIDAK menggunakan

tanda petik tunggal seperti ekspresi pada karakter.

4. Literal Bilangan

Riil Bilangan riil, misalnya -0.00127 atau 415.842, pada

java dapat disimpan baik sebagai float atau double. Bilangan

real dapat direpresentasikan dalam bentuk desimal biasa,

pecahan, atau eksponen (dilambangkan dengan e atau E).

Tipe Ukuran Rentang Rentang

Bytes Bit

Float 4 32 +/- 3.4 x 1038 6-7

Double 8 64 +/- 1.8 x 10308 15

Imbuhan akhir d atau D dan f atau F dapat pula ditambahkan

untuk menentukan tipenya secara eksplisit. Berikut beberapa

contohnya. double d = 3.27E+32;

float f = 4f;

float pi = 3.14159;

5. Literal String

String merupakan untaian huruf dan angka yang tersusun

menjadi satu kalimat. Dalam bahasa java, string bukan

merupakan tipe primitif, tetapi merupakan kelas. String pada

java tidak disimpan dalam bentuk array seperti pada C. Java

menyediakan beberapa metoda untuk melakukan

penggabungan, modifikasi, atau perbandingan. String ditulis

di antara dua tanda petik ganda seperti contoh berikut. String salam = "Selamat Datang";

Page 10: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

String juga dapat mengandung karakter spesial seperti

dibahas pada literal karakter. Misalnya String hallo = "Selamat Datang \"Bapak

Presiden\"";

System.out.println("Hallo Bambang\nSelamat pagi,\

nSemoga hari anda cerah\n";

Berikut ini adalah beberapa contoh lainnya. // Contoh string kosong

String teks = "";

// Contoh string berisi "

teks = "\"";

// String dapat juga dipisah menjadi beberapa

baris

teks = "ini baris pertama " + "dan ini

lanjutannya."

6. Literal Null

Literal terakhir pada bahasa java adalah literal null. Null

merupakan kondisi di mana suatu objek tidak diberi alokasi

memori. Pada saat suatu objek dideklarasikan, komputer akan

mengalokasikan memori untuk objek tersebut. Apabila objek

tersebut telah selesai dipergunakan, kita dapat melepas lokasi

memori yang digunakan oleh objek tersebut sehingga memori

itu dapat digunakan oleh objek lain.

Berikut ini adalah contohnya obj = null;

7.2.3 Operator dalam Java

Operator dalam Java sama halnya dengan bahasa pemrograman

yang lain, antara lain adalah:

+ Operator penjumlahan (juga sebagai penyambung string)

- Operator pengurangan

* Operator perkalian

/ Operator pembagian

% Operator sisa pembagian

Page 11: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Operator aritmatika digunakan untuk melakukan operasi

matematika, seperti penambahan, pengurangan, pembagian, dan

modulo (atau sisa pembagian).

Contoh penggunaan :

Simbol Nama Operator Contoh Penggunaanya

+ Operator Penjumlahan n = n + 1;

- Operator Pengurangan n = n - 1 ;

* Operator Perkalian n = n * 1;

/ Operator Pembagian n = n / 1;

% Operator Sisa Pembagian n = n % 1;

+ Operator Penyambung String n = "saya "+"tidur";

public class OperatorAritmatika

public static void main(String[] args) {

// TODO Auto-generated method stub

int x = 2;

int y = 5;

int z = 3;

int g = 0;

g = x + y;

System.out.println("Penjumlahan (x+y) : " + g);

g = y - x;

System.out.println("Pengurangan (y-x) : " + g);

g = x * y;

System.out.println("Perkalian (x*y) : " + g);

g = y / x;

System.out.println("Pembagian (y/x) : " + g);

g = z % y;

System.out.println("Sisa pembagian (z%x) : " + g);

g = x + (y * (z/x));

System.out.println("Hasilnya sekarang : " + g); } }

Keluaran Program :

Page 12: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.9 Hasil program operator dalam java

7.2.3.1 Operator Tunggal

Operator tunggal hanya membutuhkan satu operan

untuk melakukan operasinya. Operator ini tidak dapat

digunakan untuk variabel final, karena variabel final berupa

konstanta yang tidak dapat diubah-ubah. Beberapa jenis

operator tunggal diberikan pada tabel di bawah ini.

Simbol Nama operator Operasi Contoh

+ Operator plus Menyakan nilai

positif

Angka = +1;

- Operator minus Menanyakan nilai

negatif

Angka =-1;

++ Operator kenaikan Menambah suatu

bilangan dengan1

Angka =++Angka;

-- Operator

penurunan

Mengurangkan

suatu bilangan

dengan 1

Angka =--Angka;

! Operator lawan Membalik nilai

suatu boolean

Ok=!true;

Operator kenaikan dan penurunan dapat diletakkan

di belakang atau di depan suatu variabel. Jika diletakkan di

depan (++x atau --x), penambahan/pengurangan dilakukan

sebelumnya, sedangkan apabila diletakkan di akhir (x++

atau x--) penambahan/pengurangan dilakukan setelahnya.

Page 13: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Walau bagaimanapun pada akhirnya keduanya akan

menghasilkan x = x+1 atau x = x-1.

Mari kita lihat contohnya untuk membedakan lebih

jelas perbedaan penempatan operator tunggal ++ dan –

public class OperatorTunggal {

/**

* Contoh program menggunakan operator tunggal

*

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

int x = 0;

int y = 0;

y = ++x;

System.out.println("Contoh operator pada prefix

(awalan)");

System.out.println("---------------------------"

);

System.out.println("Nilai x baru : " + x);

System.out.println("Nilai y = ++x : " + y);

x = 0;

y = 0;

y = x++;

System.out.println("\nContoh operator pada

sufix (akhiran)");

System.out.println("---------------------------"

);

System.out.println("Nilai x baru :" + x);

System.out.println("Nilai y = x++ :" + y);

}

}

Jalankan program tersebut dan lihat hasilnya.

Apabila operator ++ diletakkan di awal (prefix), maka nilai

Page 14: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

"x" dan "y" akan sama, karena penambahan nilai "x"

dilakukan terlebih dahulu, lalu hasilnya diberi kepada "y".

Apabila operator ++ diletakkan di akhir

(sufix), nilai "y" adalah nilai "x" terdahulu. Java akan

memberi nilai "y" dengan nilai "x" sebelum operasi ++

dilakukan. Baru kemudian nilai "x" ditambahkan.

Berikut ini adalah screenshot keluarannya :

Gambar 7.10 Hasil program operator tunggal

7.2.3.2 Operator Pembanding, Boolean dan Kondisi

Operator kondisi (conditional operator)

menghasilkan nilai true atau false tergantung dari

variabelnya, dalam hal ini operasinya dilakukan pada dua

operand. Operator boolean adalah operator kondisi yang

kedua operandnya berupa nilai boolean (true atau false),

sedangkan Operator Pembanding membandingkan 2 nilai

seperti pada operasi matematika.

Catatan : Pada objek, seperti String, operasi

pembanding akan membandingkan alamat memory tempat

objek itu disimpan, bukan membandingkan isinya. Untuk

membandingkan isi String, gunakan equals(),

equalsIgnoreCase(), dan compareTo() seperti dibahas pada

bagian sebelumnya.

Simbol Nama operator Contoh

== Sama dengan b = (1 == 2);

!= Tidak sama dengan b = (1 != 2);

> Lebih besar b = (1 > 2);

Page 15: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

>= Lebih besar atau sama dengan b = (1 >= 2);

< Kurang dari b = (1 < 2);

<== Lebih kecil sama dengan b = (1 <= 2);

&& Conditional AND b = true && false;

|| Condisional OR b = true || false;

! NOT b = !true;

?: Bentuk pendek dari if-then-else

7.2.3.3 Operator boolean AND

Operator kondisi AND menghasilkan "true" apabila

kedua operandnya bernilai "true". Jika salah satunya atau

keduanya "false", operator ini menghasilkan "false". Berikut

ini tabel kebenaran operasi AND.

Op1 atau Exp1 Op2 atau Exp2 Hasil

True True True

True False False

False True False

false False False

Operator && akan mengevaluasi Op2 (di sebelah kanan)

HANYA jika operand 1 bernilai "true". Seperti terlihat dari

tabel di atas, apabila Op1 (di sebelah kiri) bernilai "false",

hasilnya akan selalu "false" tidak tergantung pada isi dari

Op2.

7.2.3.4 Operator kondisi OR

Operator kondisi OR menghasilkan "true" jika salah

satu operandnya bernilai "true". Jika keduanya "false",

operator ini menghasilkan "false". Berikut ini table

kebenaran operasi OR.

Op1 atau Exp1 Op2 atau Exp2 Hasil

True True True

True False True

False True True

false False False

Page 16: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Operator || akan mengevaluasi Op2 (di sebelah kanan)

HANYA jika operand 1 bernilai "false". Seperti terlihat dari

tabel di atas, apabila Op1 (di sebelah kiri) bernilai "true",

hasilnya akan selalu "true" tidak tergantung pada isi dari

Op2.

7.2.3.5 Operator NOT

Operator NOT ("!") melakukan operasi boolean

NOT pada operand atau ekspresi tunggal. Operator ini

mengecek nilai boolean dari suatu operand atau expresi

kemudian membalik nilainya (dari true ke false atau false

ke true). Berikut ini adalah tabel kebenaran operator NOT.

Opl Hasil

True False

False True

7.2.3.6 Operator Ternary (?:)

Java memiliki operator berkondisi lain yang disebut

ternary "?:", yang pada dasarnya merupakan bentuk pendek

dari if-then-else. Secara umum kondisi ? jika_benar :

jika_salah Pada dasarnya operator "?:" akan mengevaluasi

"kondisi". Apabila kondisi bernilai "true", operator akan

mengembalikan "jika_benar", tetapi apabila "kondisi"

bernilai "false", operator akan mengembalika "jika_salah".

Misalnya

x = (1 > 2) ? 10 : 20

Dari contoh di atas, "x" akan memiliki nilai 20, karena

ekspresi (1 > 2) adalah salah (atau "false").

Contoh program :public class OperatorKondisi {

/**

* Contoh program menggunakan operator kondisi *

Page 17: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

* @param args */

public static void main(String[] args) {

// TODO Auto-generated method stub

int x = 5;

int y = 10,

angka = 0;

boolean bl = true;

if((x == 5) && (x < y))

System.out.println("Nilai x adalah " + x);

if((x == y) || (y > 1))

System.out.println("Nilai y lebih besar dari

x");

angka = bl ? x : y;

System.out.println("Angka yang keluar adalah " +

angka);

}

}

Berikut adalah hasil keluarannya :

Gambar 7.11 Hasil progam operator ternary

7.2.4 Input Output

Java bukan bahasa pemrograman untuk Console (seperti DOS

atau Linux), sehingga untuk mengambil input dari user diperlukan

sedikit trik yang tidak sesederhana readln pada bahasa pemrograman

lain.

Kita membutuhkan kelas yang beberapa kelas, yaitu BufferedReader,

InputStreamReader, dan System.in (lawan dari System.out yang kita

gunakan untuk menampilkan pesan di layar).

Dua kelas pertama terdapat dalam package yang dinamakan

java.io. Untuk itu, kita harus menambah satu baris perintah import java.io.*

yang berarti mengimport semua kelas dalam paket java.io (tanda *

berarti semua). Kemudian kita harus juga membuat suatu objek dari

Page 18: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

kelas BufferedReader. Kelas BufferedReader adalah kelas abstrak

yang menangani baca tulis ke suatu media.

Kelas ini membutuhkan kelas lain sebagai pekerjanya, yaitu

InputStreamReader. Dan InputStreamReader membutuhkan media

tempat baca tulis dilakukan, yaitu System.in. Semua ini bisa

dituliskan dalam satu perintah yaitu :BufferedReader br = new BufferedReader

(new InputStreamReader(System.in));

Di sini variabel br merupakan objek yang merupakan jelmaan

dari kelas BufferedReader. Untuk memerintahkan Java mengambil

input dari user, kita gunakan fungsi readline() yang terdapat pada

kelas BufferedReader, dalam hal ini terealisasi pada objek br. nama = br.readLine();

Karena kita berhubungan langsung dengan sistem IO (input-

output) komputer yang harus diasumsikan tidak pasti (misalnya ada

masalah pada sistem keyboard, atau komputer sedang bekerja berat

sehingga input dari user tidak bisa diambil), kita harus menempatkan

fungsi readLine() pada klausa

try {

...

}

catch (IOException ioe) {

...

}

Perintah di dalam try { ... } adalah perintah yang kita ingin

jalankan pada situasi yang "mungkin" tidak berhasil. Parameter pada

catch, yaitu IOException ioe adalah jenis kesalahan yang ingin kita

tangkap. Dalam hal ini kita ingin menangkap adanya kesalahan IO,

yaitu kesalahan yang bertipe IOException. Perintah di dalam catch

{ ... } adalah perintah yang akan dilakukan apabila kesalahan

ditangkap. Jika tidak ada kesalahan IO yang ditemukan, maka bagian

ini akan dilewatkan (tidak dijalankan). Mari kita lihat program akhir

untuk mengambil input dari user.

Page 19: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

package ambilinputkonsol;import java.io.*;public class AmbilInputKonsol {

/** * @param args */ public static void main (String[] args)

{ // TODO Auto-generated method

stub

System.out.print ("Masukkan nama Anda : ");

// buat objek baru untuk mengambil input BufferedReader br = new

BufferedReader (new InputStreamReader(System.in));

// tempat di mana input dari user akan diletakkan String nama = null;

try { nama = br.readLine

(); } catch (IOException ioe) { System.out.println

("Kesalahan IO pada saat menanyakan nama Anda"); System.exit (1); }

System.out.println ("Terima kasih, " + nama);} }Run program kemudian arahkan kursor Anda ke bagian bawah di

kotak yang bernama Console.

Gambar 7.12 Program Input output

Page 20: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Masukkan nama Anda, kemudian hasilnya akan ditampilkan

pada baris berikutnya.

Gambar 7.13 Hasil program Input output

7.2.5 Pengkondisian

7.2.5.1 Pernyataan IF-THEN-ELSE

Pernyataan if merupakan salah satu pernyataan

percabangan pada Java, dengan bentuk umum seperti if (suatu_kondisi)

perintah1 else

perintah2

Seperti biasa, perintah1 dan perintah2 bisa berbentuk blok

yang terdiri dari beberapa perintah. Pernyataan if merupakan

bentuk percabangan 2 arah. Bagian else yang terdiri dari

kata "else" dan perintah2 tidak selalu harus ada. Perhatikan

bahwa baik perintah1 dan perintah2 bisa merupakan

pernyataan if itu sendiri. Ada beberapa hal menarik yang

mungkin berguna. Ambil contoh dalam pernyataan berikut

if (x > 0) if (y > 0) System.out.println ("perintah1"); else System.out.println ("perintah2");

Pertama-tama, komputer tidak peduli bagaimana Anda

memformat paragraf dan indentasi dari pernyataan if

tersebut. Java akan menganggap else terkait dengan if

terdekat, sehingga kode di atas akan dianggap sepertiif (x > 0) if (y > 0) System.out.println ("perintah1"); else System.out.println ("perintah2");

Page 21: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

else di program di atas akan dianggap bagian dari

pernyataan jika y > 0, padahal yang kita maksud adalah else

jika x > 0. Untuk memperbaikinya, kita tambahkan tanda

kurung {} sehingga menjadiif (x > 0) { if (y > 0) System.out.println ("perintah1"); } else System.out.println ("perintah2");

Kedua pernyataan tersebut memiliki arti yang berbeda. Jika

x <= 0, pada kode pertama Java tidak mencetak apa-apa ke

layar, sedangkan kode kedua java akan mencetak

"perintah2". Lebih menarik lagi, perhatikan kode berikutif (kondisi_pertama) perintah1 else if (kondisi_kedua) perintah2 else

perintah3

Lagi-lagi karena Java tidak membedakan indentasi

penulisan, maka kode tersebut akan diterjemahkan Java

sepertiif (kondisi_pertama) perintah1 else if (kondisi_kedua) perintah2 else perintah3

Dengan kata lain perintah tersebut lebih seperti

percabangan 3 arah. Komputer akan mengeksekusi hanya

salah satu dari perintah1, perintah2, atau perintah3.

Komputer akan mengevaluasi kondisi_pertama, jika true,

maka perintah1 dieksekusi sementara perintah2 dan

perintah3 diabaikan. Jika false, maka kondisi_kedua akan

dievaluasi. Jika true, maka perintah2 akan dieksekusi dan

perintah3 diabaikan. Jika false, maka hanya perintah3 saja

Page 22: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

yang dieksekusi. Berikut ini adalah contoh penggunaan

percabangan 3 arah.if (suhu < 20) System.out.println ("Dingin"); else if (suhu < 30) System.out.println ("Lumayan"); else System.out.println ("Panas");

Kita bahkan dapat membentuk pernyataan if-else ini menjadi

percabangan N arah, misalnyaif (kondisi_pertama) perintah1 else if (kondisi_kedua) perintah2 else if (kondisi_ketiga) perintah3 else if (kondisi_keempat) perintah4 . . . else if (kondisi_keNminus1) perintahNmin1 else perintahN

Contoh berikut ini adalah mengurutkan 3 bilangan dari

kecil ke besar. Misalnya kita mempunyai 3 variabel a,b dan

c. Bilangan yang paling kecil adalah bilangan yang lebih

kecil dari kedua bilangan yang lain. Sekarang mari kita

rangkai logika untuk menentukan urutan bilangan dari kecil

ke besar. Mula-mula kita cek apakah a lebih kecil dari b dan

c, yaitu dengan pernyataan

if (a < b && a <c)

Jika a betul merupakan bilangan terkecil, maka kita uji

apakah b lebih kecil dari c dengan perintah

if (b < c)

Jika a bukan bilangan terkecil, maka b atau c, salah satunya

bisa merupakan bilangan terkecil. Kita hanya perlu

membandingkan apakah b lebih kecil dari c dengan

if (b < c)

Page 23: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Jika b lebih kecil dari c, berarti kita tahu bahwa b adalah

bilangan terkecil. Tetapi kita belum tahu apakah bilangan

terkecil berikutnya adalah a atau c, sehingga kita harus

menguji lagi dengan

if (a < c)

Jika a lebih kecil dari c, maka urutannya adalah b, a, c. Jika

tidak, maka urutannya adalah b, c, a. Demikian halnya

apabila jika b > c, maka kita bisa tentukan urutan

bilangannya.

Keseluruhan logika ini, bisa kita tuangkan dalam bentuk :if (a < b && a < c) { if (b < c) System.out.println (a + " " + b + " " + c); else System.out.println (a + " " + c + " " + b); } else if (b < c) { if (a < c) System.out.println (b + " " + a + " " + c); else System.out.println (b + " " + c + " " + a); } else { if (a < b)

else System.out.println (b + " " + c + " " + a); }

Logika di atas bisa juga dituangkan dengan cara lain, yaitu

melihat urutannya. Pertama kita cek apakah a < b. Jika ya,

kita tahu bahwa urutannya pasti a terlebih dahulu baru b.

Kemudian kita lihat apakah c berada di sebelah kiri a atau

disebelah kanan b atau di tengah-tengah. Demikian

seterusnya jika urutannya b terlebih dahulu baru a. Sehingga

kodenya bisa dituliskan dalam bentuk :if (a < b) { if (c < a) System.out.println (c + " " + a + " " + b); else if (c > b)

Page 24: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

System.out.println (a + " " + b + " " + c); else System.out.println (a + " " + c + " " + b); } else { if (c < b) System.out.println (c + " " + b + " " + a); else if (c > a) System.out.println (b + " " + a + " " + c);else System.out.println (b + " " + c + " " + a); }

7.2.5.2 Pernyataan SWITCH-CASE

Penyataan percabangan kedua yang dimiliki Java adalah

switch. Pernyataan switch lebih jarang digunakan, tetapi

sering bermanfaat apabila kita ingin menuliskan

percabangan multi arah. Pernyataan switch memiliki

bentuk sebagai berikutswitch (ekspresi) { case nilai1: perintah1 break; case nilai2: perintah2 break; case nilai3: perintah3 break; default: perintah_lain}

Di sini pernyataan switch akan mencari nilai

ekspresi yang sesuai dengan nilai-nilai yang

didaftarkan pada pernyataan case. Jika salah satu nilai

ditemui, maka program akan melompat ke cabang case

tersebut dan melakukan perintah yang terdapat di sana.

Jika tidak ditemui, maka program akan melompat ke

perintah yang terdapat pada pernyataan default.

Pernyataan break di atas sebetulnya tidak harus selalu

ada. Tetapi, perintah break di sini memerintahkan

komputer agar segera keluar dari blok switch apabila

Page 25: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

perintah tersebut telah selesai dilaksanakan. Apabila

perintah break tidak diberikan, maka program akan terus

mengeksekusi perintah lain meskipun sudah berada di luar

nilai yang tertera dalam pernyataan casenya. Misalnya,

lihat kode berikut ini :switch (N) case 1: System.out.println ("Angka tersebut bernilai 1"); break; case 2: case 3: case 4: case 5: System.out.println ("Angka tersebut bernilai 2, 3, 4, atau 5"); break; case 6: case 7: case 8: System.out.println ("Angka tersebut bernilai 6, 7, atau 8"); break; default: System.out.println ("Angka tersebut tidak bernilai 1 - 8"); }

Salah satu aplikasi di mana pernyataan switch berguna

adalah untuk memproses menu. Menu memiliki beberapa

pilihan dan user akan diminta untuk memilih suatu pilihan.

Kita dapat menggunakan switch untuk menginstruksikan

komputer untuk melakukan tugas tertentu sesuai dengan

menu yang dipilih oleh user. Jika Anda ingat pernyataan

main() pada program Java, pernyataan main memiliki

parameter String[] args, di mana args merupakan argumen

yang diberikan pada saat program dijalankan melalui

konsol. Biasanya argumen yang diberikan berupa opsi

bagaimana program harus dilaksanakan. Di sini pernyataan

switch juga berguna untuk memilih bagaimana program

Page 26: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

akan berjalan. Jika Anda terbiasa atau pernah bergaul

dengan Linux, maka tidak asing untuk menemukan

perintah pada Linux seperti "ls -l" atau "tar xfz blabla". Di

sini ls atau tar adalah nama program dan "-l" atau "xfz

blabla" adalah argumen yang diberikan pada saat program

dijalankan.

7.2.6 Perulangan

7.2.6.1 Pernyataan While

Pernyataan while telah diperkenalkan pada bagian

sebelumnya. Perulangan while memiliki bentukwhile (suatu_kondisi) perintah

perintah bisa juga berupa blok yang berisi kumpulan

perintah-perintah di antara { dan }. perintah ini disebut

juga dengan inti perulangan. Inti perulangan akan terus

dieksekusi selama suatu_kondisi bernilai true.

suatu_kondisi ini disebut juga penguji perulangan. Contoh

program :import java.io.*;

public class RataRata {

/** * @param args */ public static void main (String[] args) { // TODO Auto-generated method stub double jumlah = 0; double bilangan = 0; int n = 0;BufferedReader br = new BufferedReader (new InputStreamReader(System.in)); String strbilangan = null;

System.out.print ("Masukkan bilangan pertama : ");

Page 27: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

try { strbilangan = br.readLine (); } catch (IOException ioe) { System.out.println ("Kesalahan IO, program berhenti"); System.exit (1); }

// mengubah input menjadi double agar bisa diproses lebih lanjut bilangan = Double.parseDouble (strbilangan);

while (bilangan != 0) { jumlah += bilangan; // sama dengan : jumlah = jumlah + bilangan n++; // sama dengan : n = n+1

// tanya user input System.out.print ("Masukkan bilangan berikutnya (atau 0 untuk mengakhiri) : "); try {strbilangan = br.readLine ();} catch (IOException ioe) { System.out.println ("Kesalahan IO, program berhenti"); System.exit (1); }

// mengubah input menjadi double agar bisa diproses lebih lanjut bilangan = Double.parseDouble (strbilangan); }

// hitung rata-rata double ratarata = jumlah/n;

// cetak hasilnya ke layar if (n == 0) { System.out.println ("Data kosong, rata-rata tidak bisa dihitung"); } else { System.out.println ("Anda memasukkan " + n + " data"); System.out.println ("Rata-rata

Page 28: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

bilangan yang dimasukkan adalah " + ratarata); } } }

Gambar 7.14 Hasil program perulangan dengan while

7.2.6.2 Pernyataan do … while

Kadang-kadang akan lebih mudah menulis

perulangan jika penguji perulangan dilakukan di akhir

badan perulangan. Dalam hal ini badan perulangan akan

dieksekusi terlebih dahulu tanpa memperdulikan apakah

suatu kondisi bernilai true atau false. Pengujian dilakukan

di akhir setelah suatu kondisi didapat dalam eksekusi

perulangan pertama kali. Pernyataan do ... while pada

dasarnya merupakan pernyataan while terbalik, dengan

bentuk.do perintah while (suatu_kondisi);

Perlu diingat bahwa pernyataan do ... while diakhiri dengan

tanda ; di akhir while. Contoh sederhana adalah program

bermain game, di mana game akan menanyakan apakah

user ingin bermain lagido { main game tanya user apakah ingin main lagi } while (user menjawab ya);

7.2.6.3 Perulangan for

Kita akan membahas bentuk perulangan lain, yaitu

perulangan for. Setiap bentuk perulangan for dapat diubah

menjadi bentuk perulangan while dengan fungsi yang sama

Page 29: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

tanpa mengubah alur program. Tetapi tergantung dari

permasalahan yang akan kita pecahkan, menulis program

dengan for akan membuat alur program lebih mudah

dipahami. Misalnya, kita akan menghitung 1+2+3+4+5+...

+100. Kita bisa ekspresikan program tersebut dalam bentuki = 1; jumlah = 0; while (i <= 100) {jumlah += i; i++; }

Perulangan ini dapat ditulis juga dengan

jumlah = 0;

for (i = 1; i <= 100; i++)

jumlah += i

Apa point-point penting yang kita lihat dari

perubahan ini? Pertama mari kita lihat bentuk

penggunaan while yang umum dilakukan inisialisasi

variabel

while (suatu_kondisi_variabel) { perintah update_variabel }

Di sini perulangan while memiliki 3 komponen

penting, yaitu inisialisasi, yaitu memberikan nilai awal

suatu variabel, suatu_kondisi_variabel, yaitu pengujian

bahwa perulangan akan terus dilakukan selama kondisi ini

bernilai true, dan terakhir update_variabel, yaitu instruksi

mengubah nilai kondisi variabel untuk membatasi

perulangan sehingga akan selesai suatu saat, tidak berulang

terus menerus. Pada perulangan for, ketiga komponen ini

dirangkai menjadi satu dalam bentuk,

for(inisialisasi_variabel; kondisi_variabel; update_variabel)

perintah

Page 30: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

atau jika perintah merupakan blok yang terdiri dari banyak

perintah, dapat dituliskan juga dalam bentuk,

for(inisialisasi_variabel; kondisi_variabel; update_variabel)

{ banyak_perintah }

Di sini inisialisasi variabel bisa berupa apa saja yang

berbentuk perintah.

7.2.6.4 Perulangan for Bertingkat

Seperti pada perulangan while, perulangan for

pun dapat dilakukan bertingkat, artinya perulangan for di

dalam perulangan for. Kita ambil contoh sederhana

misalnya membuat tabel perkalian seperti,

1 2 3 4 5 6 7 8 9 10 11 12

2 4 6 8 10 12 14 16 18 20 22 24

3 6 9 12 15 18 21 24 27 30 33 36

4 8 12 16 20 24 28 32 36 40 44 48

5 10 15 20 25 30 35 40 45 50 55 60

6 12 18 24 30 36 42 48 54 60 66 72

7 14 21 28 35 42 49 56 63 70 77 84

8 16 24 32 40 48 56 64 72 80 88 96

9 18 27 36 45 54 63 72 81 90 99 108

10 20 30 40 50 60 70 80 90 100 110 120

11 22 33 44 55 66 77 88 99 110 121 132

12 24 36 48 60 72 84 96 108 120 132 144

Program untuk membuat tabel perkalian tersebut bisa

diekspresikan dengan algoritma pseudocode sebagai

berikut,

untuk setiap baris i = 1,2,3...,12

cetak perkalian i dengan 1,2,3..12

cetak baris baru

Page 31: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Kalau kita jabarkan lebih lanjut, perintah kedua juga

merupakan perulangan dari 1 hingga 12, sehingga algoritma

di atas bisa kita tulis sebagai,

untuk setiap baris i = 1,2,3...,12

untuk setiap kolom j = 1,2,3...,12

cetak i*j cetak baris baru

Kita bisa terjemahkan ke dalam bahasa Java sebagai,

for (int i = 1; i <= 12; i++) {

for (int j = 1; j <= 12; j ++) {

System.out.print(i*j + " ");

}

System.out.println(""); }

Berikut ini adalah contoh program :public class TabelPerkalian {

/** * @param args */ public static void main (String[] args) { // TODO Auto-generated method stub for (int i = 1; i <= 12; i++) { for (int j = 1; j <= 12; j++) { System.out.print (i*j + " "); } System.out.println (""); } } }

Berikut ini hasil keluarannya:

Page 32: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.15 Hasil program perulangan for bertingkat

7.3 Hasil Percobaan dan Analisis

7.3.1 Latihan 1

Berikut ini adalah source code dan screenshoot program untuk

menampilkan nama melalui input:Program inputoutput

package inputouput;

import java.io.*;

public class InputOuput {

public static void main(String[] args) {

System.out.print("Masukkan nama Anda : "); // buat

objek baru untuk mengambil input

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in)); // tempat di mana input

dari user akan diletakkan

String nama = null;

try { nama = br.readLine(); } catch(IOException ioe)

{ System.out.println("Kesalahan IO pada saat

menanyakan nama Anda"); System.exit(1); }

System.out.println(nama); }

}

Page 33: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.16 Source code program input output

Gambar 7.17 Screenshoot output program input output

Program inputoutput ini menampilkan data yang kita input sesuai

dengan data yang diperlukan program.

7.3.2 Latihan 2

7.3.2.1 if-elsepackage nilaiujian;

import java.util.Scanner;

Page 34: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

/**

*

* @author NabiL

*/

public class Nilaiujian {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

Scanner input = new Scanner (System.in);//objek baru

untuk input

System.out.println("Program Nilai Ujian");//output

System.out.println("Masukkan Sebuah Nilai :");

int a;//deklarasi variabel

a = input.nextInt();

//deklarasi pengkondisian

if (a>=80){

System.out.println("A");}//output

if (a>= 70 && a<= 79){

System.out.println("B");}

if (a>= 50 && a<= 69){

System.out.println("C");}

if (a>= 35 && a<=49){

System.out.println("D");}

if ( a< 35){

System.out.println("E");

}

}

}

Page 35: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.18 Source code program if-else

Gambar 7.19 Screenshoot program if-else

Program pengkodisian dengan menggunakan IF-ELSE akan

menampilkan merubah nilai angka menjadi nilai huruf sesuai dengan

pengkodisianya.

7.3.2.2 switch case

Program ini menggunakan pengkodisian switch case

package switchcase;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

Page 36: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

/**

*

* @author NabiL

*/

public class Switchcase {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

int nilai = 0;//menampilkan informasi

System.out.println("Program Nilai

Ujian");

System.out.println("Masukkan

Nilai :");//membaca string

BufferedReader br = new

BufferedReader(new

InputStreamReader(System.in));

String strnilai = null;

try {//meminta input

strnilai = br.readLine();}

catch (IOException ioe){

System.out.println("Kesalahan IO,

program keluar");

System.exit(1);}

nilai = Integer.parseInt(strnilai);

//konversi string ke integer

if (nilai >=80 && nilai <=100)

{nilai=1;} //pengkondisian if

else if (nilai >=70 && nilai < 80)

{nilai=2;}

else if (nilai >=50 && nilai < 70)

{nilai=3;}

else if (nilai >=35 && nilai < 50)

{nilai=4;}

else if (nilai < 35) {nilai=5;}

Page 37: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

switch (nilai)//pengkondisian switch

menggunkan break sebagai pemisah perintah

{

case 1: System.out.println("Nilai anda

adalah A");

break;

case 2: System.out.println("Nilai anda

adalah B");

break;

case 3: System.out.println("Nilai anda

adalah C");

break;

case 4: System.out.println("Nilai anda

adalah D");

break;

case 5: System.out.println("Nilai anda

adalah E");

break;

}

}

}

Gambar 7.20 Source code program switch case

Page 38: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.21 Screenshoot program switch case

Program pengkodisian menggunakan swith case akan merubah

nilai angka menjadi nilai huruf sama seperti dengan pengkodisian if else.

7.3.3 Latihan 3

Program perulangan menggunakan FOR dan WHILE dengan nilai

nol (0) sebagai nilai awal dan input masukan sebagai nilai akhir yang akan

ditampilkan di layar

misal : Jika diberi input 5, maka outputnya 0 1 2 3 4 5.

Jika diberi input 3, maka outputnya 0 1 2 3.

Jika lebih kecil dari nol (0), output error

package Latihan3;//deklarasi paket

import java.util.Scanner;

public class Latihan3 {//deklarasi kelas

/**

* @param args the command line arguments

*/

public static void main(String[] args) {//deklarasi

fungsi

// TODO code application logic here

Page 39: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Scanner input = new Scanner (System.in);//deklarasi

input

System.out.print("Masukkan Nilai Akhir= ");

int nilai = input.nextInt();

if (nilai>=0){//deklarasi pengkondisian

int i;//deklarasi variabel

i=0;//deklarasi perulangan

while (i<=nilai){

System.out.println(i);i++;//output

}

}

}

}

Gambar 7.22 Source code program perulangan

Page 40: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah

Gambar 7.23 Sreenshot Program perulangan

Program perulangan menggunakan FOR dan WHILE akan

menampilkan nilai sesuai dengan urutan nilai yang kita masukan.

7.4 Kesimpulan

1. Bahasa pemrograman Java merupakan bahasa pemrograman berorientasi

objek yang mudah dikuasai jika sudah mahir bahasa pemprograman C++

2. Pada input ouput Java untuk mengambil input dari user diperlukan sedikit

trik yang tidak sesederhana readln pada bahasa pemrograman lain.

3. Jumlah kelas, jumlah metode, dll, menunjukkan bahwa program yang

ditulis dalam bahasa pemrograman Java memiliki jumlah 4 kali lipat lebih

kecil dari program sama yang ditulis dalam bahasa C++

4. Java digunakan bermacam jenis aplikasi seperti aplikasi embedded,

aplikasi keuangan, desktop, simulasi pesawat, pemrosesan citra, game,

aplikasi perusahaan terdistribusi yang disebut J2EE dan masih banyak

lagi.

Page 41: java1.docx

MOBILE SYSTEM & SOFTWARE LABORATORYComputer System Engineering

Diponegoro University SemarangJL. Prof.Sudharto, SH – Tembalang Semarang

Jawa Tengah