cetak modul logika revisi mi dan ka by dhs-libre

65
Labolatorium Komputer STMIK KHARmISMA KARAWANG Jl. Pangkal Perjuangan Km. 1 By Pass Karawang Tlp. (0267) 412480

Upload: aston-pasampang

Post on 25-Nov-2015

77 views

Category:

Documents


2 download

TRANSCRIPT

  • Labolatorium KomputerSTMIK KHARmISMA KARAWANG

    Jl. Pangkal Perjuangan Km. 1 By Pass Karawang Tlp. (0267) 412480

  • MODUL PRAKTIKUM

    LOGIKA & ALGORITMA

    Karawang, 17 Agustus 2012

    Mengetahui,

    Ketua STMIK Kharisma Ka. Unit Pelaksana Teknis

    Rani Amalia, SE., MM M. Asep Sumarna, Drs., MMNIK. 446 300 021 NIP. 446 396 005

  • KATA PENGANTAR

    Puji syukur ke hadirat Tuhan Yang Maha Kuasa, yang telah memberikan rahmat-Nya sehingga Modul Praktikum Logika & Algoritma untuk mahasiswa/i Jurusan Manajemen(MI) Informatika dan Komputer akuntansi (KA) Stmik Kharisma Karawang ini dapatdiselesaikan dengan sebaik-baiknya.

    Modul praktikum ini dibuat sebagai pedoman dalam melakukan kegiatan praktikumLogika & Algoritma yang merupakan kegiatan penunjang mata kuliah Logika & Algoritmapada Jurusan MI & KA. Modul praktikum ini diharapkan dapat membantu mahasiswa/idalam mempersiapkan dan melaksanakan praktikum dengan lebih baik, terarah, danterencana. Pada setiap topik telah ditetapkan tujuan pelaksanaan praktikum dan semuakegiatan yang harus dilakukan oleh mahasiswa/i serta teori singkat untuk memperdalampemahaman mahasiswa/i mengenai materi yang dibahas.

    Penyusun menyakini bahwa dalam pembuatan Modul Praktikum Logika & Algoritmaini masih jauh dari sempurna. Oleh karena itu penyusun mengharapkan kritik dan saran yangmembangun guna penyempurnaan modul praktikum ini dimasa yang akan datang.

    Akhir kata, penyusun mengucapkan banyak terima kasih kepada semua pihak yangtelah membantu baik secara langsung maupun tidak langsung.

    Karawang, Agustus 2012

    Dedih, M. Kom

  • DAFTAR ISI

    Judul iKata Pengantar iiDaftar Isi iiiModul 1 Pengenalan Algoritma dan Java dengan NetBeans 1Modul 2 Tipe Data dan Variabel 11Modul 3 Operator 20Modul 4 Statemen If 24Modul 5 Statemen Switch 27Modul 6 Statemen Perulangan 31Modul 7 Statemen Peloncatan 35Modul 8 Method Tanpa Parameter 39Modul 9 Method dengan Parameter 43Modul 10 Array / Larik 48Modul 11 Array / Larik Multidimensi 53Modul 12 Kelas dan Obyek 57Modul 13 Rekursi 60Modul 14 Input Data Melalui Keyboard 64

  • MODUL IPENGENAL ALGORITMA & JAVA

    1.1 TUJUANMahasiswa memahami tentang dasar-dasar Algoritma pemrograman danmengimplementasikan program sederhana dengan NetBeans 6.5

    1.2 Teori Singkat1. 2.1 Algoritma

    Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untukmemecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapatdikerjakan dan mempunyai efek tertentu.Algoritma dapat dituliskan dengan banyak cara, mulai dari menggunakan bahasa alamiyang digunakan sehari-hari, simbol grafik bagan alir, sampai menggunakan bahasapemograman seperti Java.

    1. 2.2 JavaJava adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan

    pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus pada satusistem operasi, tetapi dikembangkan untuk berbagai system operasi dan bersifat open source.

    Mulanya bahasa yang diciptakan diberi nama Oak oleh James Gosling yang

    mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namundikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah adasebelumnya, kemudian SUN menggantinya dengan JAVA. Nama JAVA sendiri terinspirasipada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudiandengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung artiasal bijih kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrogramantersebut dengan nama Java.

  • 1.2.3 Java Virtual Machine (JVM)JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasipada sebuah mesin nyata. JVM menyediakan spesifikasi hardware dan platformdimanakompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi berbasis Javamenjadi bebas dari platform manapun karena proses kompilasi diselesaikan oleh JVM.Aplikasi program Java diciptakan dengan file teks berekstensi .java. Program inidikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih. Bytecodeadalah serangkaian instruksi serupa instruksi kode mesin. Perbedaannya adalah kodemesin harus dijalankan pada sistem komputer dimana kompilasi ditujukan, sementarabytecode berjalan pada java interpreter yang tersedia di semua platform sistemkomputer dan sistem operasi.

    1.2.4 Garbage CollectionBanyak bahasa pemrogaman lain yang mengijinkan seorang programmermengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasimemori tersebut, harus terdapat cara untuk menempatkan kembali blok memori tersebutsupaya program lain dapat menggunakannya. Dalam C, C++ dan bahasa lainnya, adalahprogrammer yang mutlak bertanggung jawab akan hal ini. Hal ini dapat menyulitkanbilamana programmer tersebut alpa untuk mengembalikan blok memori sehinggamenyebabkan situasi yang dikenal dengan nama memory leaks. Program Javamelakukan garbage collection yang berarti program tidak perlu menghapus sendiriobjekobjek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaanmemori oleh programmer dan mengurangi atau mengeliminasi sumber kesalahanterbesar yang terdapat pada bahasa yang memungkinkan alokasi dinamis.

    1.2.5 Code SecurityCode Security terimplementasi pada Java melalui penggunaan Java RuntimeEnvironment (JRE). Java menggunakan model pengamanan 3 lapis untuk melindungisistem dari untrusted Java Code.1. Pertama, class-loader menangani pemuatan kelas Java ke runtime interpreter. Proses

    ini menyediakan pengamanan dengan memisahkan kelas kelas yang berasal darilocal disk dengan kelaskelas yang diambil dari jaringan. Hal ini membatasi aplikasiTrojan karena kelaskelas yang berasal dari local disk yang dimuat terlebih dahulu.

  • 2. Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan menjaminbytecode memenuhi aturanaturan dasar bahasa Java.

    3. Ketiga, manajemen keamanan menangani keamanan tingkat aplikasi denganmengendalikan apakah program berhak mengakses sumber daya seperti sistem file,port jaringan, proses eksternal dan sistem windowing.Setelah seluruh proses tersebut selesai dijalankan, barulah kode program di eksekusi.

    1.2.6 Fase fase Pemrograman JAVAGambar dibawah ini menjelaskan aliran proses kompilasi dan eksekusi sebuahprogram Java :

    Gambar 2.1: Fase dari sebuah Program Java

    Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan

    kode program pada text editor. Contoh text editor yang dapat digunakan antara lain :

    notepad, Jcreator, emacs dan lain sebagainya. Kode program yang dibuat kemudian

    tersimpan dalam sebuah berkas berekstensi .java. Setelah membuat dan menyimpan

    kode program, kompilasi file yang berisi kode program tersebut dengan menggunakan

    Java Compiler. Hasil dari kompilasi berupaberkas bytecode dengan ekstensi .class.

    Berkas yang mengandung bytecode tersebut kemudian akan dikonversikan oleh Java

    Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan.

    PROSES TOOL HASILMenulis kode program Text editor Berkas berekstensi .javaKompilasi program J Java Compiler Berkas berekstensi .class

    (Java Bytecodes)Menjalankan programJava Interpreter Program Output

    Tabel 1: Ringkasan Fase dari sebuah Program Java

  • 1.3. LANGKAH-LANGKAH MENULISKAN PROGRAM JAVA DENGANNETBEANS IDE 6.5Langkah Langkah praktikum :

    1. Pilih Start? Program?NetBeans IDE 6.52. Anda akan peroleh tampilan awal sebagai berikut :

    3. Pilih menu File4. Pilih sub menu New Project. Akan muncul layar sebagai berikut :

    5. Pilih Java lalu Java Application klik Next6. Ketik Modul_praktikum_logika pada Project Name lalu klik Finish seperti gambar

    tampilan sbb :

  • 7. Sehingga muncul tampilan sebagai berikut :

    8. Klik Kanan pada Modul_praktikum_logika pilih New lalu pilih Java Class sepertitampilan berikut :

  • 9. Lalu Ketik Hello pada Class Name dan pilih tombol Finish

    10. Sehingga muncul gambar seperti berikut :

  • 11. Ketiklah kode berikut di bawah public class Hello {:public static void main(String[] args) {

    System.out.println("Belajar Algoritma");}

    12. Lakukan kompilasi program dengan memilih menu Run> Clean and Build Project(Shift +F11) dan jalankan program dengan memilih menu Run>Run File (Shift +F6).Akan muncul output seperti di bawah ini :

    Latihan :Coba Saudara tampilkan Output program seperti dibawah ini dengan nama programmahasiswa.java :

    Mahasiswa STMIK Kharisma KarawangNPM : isi dengan NPM anda sendiriNama : isi dengan Nama Anda sendiriJurusan : Isi sesuai dengan Jurusan

    Diketik

  • MODUL 2

    TIPE DATA & VARIABEL

    2.1 Tipe Data

    Java memiliki tipe data yang dapat dikategorikan menjadi dua kelompok, yaitu tipe dataprimitif dan referensi.

    1. Tipe Data Primitif

    Delapan macam tipe data primitif dalam pemrograman Java, yaitu :

    a. Integer ( Bilangan Bulat )

    Integer merupakan tipe data numerik yang digunakan apabila tidak berurusan denganpecahan atau bilangan desimal. Tipe data numerik yang termasuk integer adalahsebagai berikut :

    Tipe Deskripsi

    Byte Memiliki nilai integer dari -128 sampai +127 dan menempati1 byte ( 8 bits ) di memori

    Short Memiliki nilai integer dari -32768 sampai 32767 danmenempati 2 bytes ( 16 bits ) di memori

    Int Memiliki nilai integer dari -2147483648 sampai 2147483647dan menempati 4 bytes ( 32 bits ) di memori

    Long Memiliki nilai dari -9223372036854775808 sampai9223372036854775807 dan menempati 8 bytes ( 64 bits ) dimemori

    b. Floating Point ( Bilangan Pecahan )Floating Point digunakan untuk menangani bilangan decimal atau perhitungan yanglebih detail dibanding integer. Ada dua macam floating point, yaitu :

    Tipe Deskripsi

    Float memiliki nilai -3.4x108 sampai +3.4x108 dan menempati 4byte di memori

    Double memiliki nilai -1.7x10308 sampai +1.7x10308

    c. CharChar adalah karakter tunggal yang didefinisikan dengan diawali dan diakhiri dengan tanda ( petik tunggal ). Char berbeda dengan String, karena String bukan merupakan tipe data

  • primitif, tetapi sudah merupakan sebuah objek. Tipe char mengikuti aturan unicode,sehingga dapat menggunakan kode /u kemudian diikuti bilangan dari 0 sampai 65535,tetapi yang biasa digunakan adalah bilangan heksadesimal dari 0000 sampai FFFF.Misalnya : \u123 Selain karakter biasa, juga terdapat karakter khusus yang didefinisikandengan cara mengawalinya menggunakan tanda \ seperti pada tabel berikut :

    Kode Nama Nilai Unicode\b Backspace \u0008\t tab \u0009\n linefeed \u000a\r Carriage return \u000d\* Double quote \u0022\ Single quote \u0027\\ Backslash \u005c

    d. Boolean

    Dalam Java dikenal tipe data boolean yang terdiri dari dua nilai saja, yaitu true dan false.Boolean sangat penting dalam mengevaluasi suatu kondisi, dan sering digunakan untukmenentukan alur program.

    2.2 Variabel

    Variabel merupakan container yang digunakan untuk menyimpan suatu nilai padasebuah program dengan tipe tertentu. Untuk mendefinisikan variabel, kita dapatmenggunakan identifier untuk menamai variabel tersebut.

    2.2.1 Identifier

    Identifier adalah kumpulan karakter yang dapat digunakan untuk menamai variabel,method, class, interface, dan package. Sebagaimana bahasa pemrograman pada umumnya,Java memiliki peraturan untuk identifier yang valid atau sah. Identifier bisa disebut validatau sah apabila diawali dengan :

    Huruf / abjad Karakter mata uang Underscore ( _ )

    Identifier dapat terdiri dari : Huruf / abjad Angka Underscore ( _ ) Identifier tidak boleh mengandung @, spasi atau diawali dengan angka. Selain itu,

    identifier tidak boleh menggunakan keyword atau kata-kata yang memiliki arti ataudigunakan dalam pemrograman Java.

    Daftar Keyword Java :

    abstract double int strictfpboolean else static super

  • break Extends long switchbyte final native synchronizedcase finally new thiscatch float package throwchar for private throwsclass goto protected transientconst if public trycontinue implements return voiddefault import short volatiledo instanceof interface while

    2.2.2 Mendeklarasikan Variabel

    Sintaks dasar :[tipe data] [nama variabel]Menuliskan tipe data dari variabel, contoh :

    int bilangan;char karakter;float bildesimal;boolean status;

    Setelah mendeklarasikan variabel dengan tipe data, selanjutnya memberikan nilaivariabel tersebut dengan tanda = .

    bilangan = 20;karakter = k;

    bildesimal = 22.2f;status = true;

    2.3 Latihan Praktikum :

    Nama file1 : ContohPerhitungan.java

    class ContohPerhitungan {public static void main(String[] args) {byte a = 1;short b = 2;int c = 3, d;

    d = a + b + c;System.out.println("Hasil = " + d);

    }}

    Nama file2 : DemoKarakter1.java

    class DemoKarakter1 {public static void main(String[] args) {char ch1 = 65;char ch2 = 'B';

  • System.out.println("ch1 = " + ch1);System.out.println("ch2 = " + ch2);

    }}

    TugasBuatlah program untuk menghitung luas :

    1. Segitiga2. Lingkaran3. Bujur sangkar4. Empat Persegi Pajang

  • MODUL 3

    OPERATOR

    3.1 Tujuan

    Mahasiswa memahami tentang operator dan penggunaannya dalam bahasa pemrogramanjava, mengetahui macam-macam kategori operator dan mengetahui perbedaan operatorsatu dengan yang lainnya

    3.2 Teori Singkat

    Dalam Java, ada beberapa tipe operator. Ada operator aritmatika, operator relasi,operator logika, dan operator kondisi. Operator ini mengikuti bermacam-macam prioritasyang pasti sehingga Compilernya akan tahu yang mana operator untuk dijalankan lebihdulu dalam kasus beberapa operator yang dipakai bersama-sama dalam satu pernyataan.Operator Java merupakan karakter khusus yang berupa simbol atau tanda yangmemerintahkan compiler untuk melakukan berbagai operasi terhadap sejumlahoperand. Perintah operasi dispesifikasikan oleh operator, dimana operand-nya adalahvariabel, pernyataan, atau besaran literal.Operator yang dibahas pada bagian ini adalah operator aritmatika, increment dandecrement, assignment (penugasan), relasi, logical, dan bitwise.

    A. Operator AritmatikaSama halnya dengan semua bahasa pemrograman, Java menyediakan operator-operatoraritmatika untuk manipulasi variabel data numerik. Operator-operator tersebut antaralain :

    Operator Penggunaan Deskripsi+ Op1 + Op2 Menambahkan Op1 dengan Op2- Op1 Op2 Mengurangkan Op1 dengan Op2* Op1 * Op2 Mengalikan Op1 dengan Op2/ Op1 / Op2 Membagi Op1 dengan Op2% Op1 % Op2 Menghasilkan sisa hasil bagi Op1 dengan Op2

    Nama file : Aritmatika.javaclass Aritmatika{public static void main(String[] args) { int a = 20; int b = 10;System.out.println("Penggunaan Operator Aritmatika ");System.out.println("Nilai awal a adalah : "+a);

  • System.out.println("Nilai awal b adalah : "+b);System.out.println("Hasil dari a + b = " +(a + b));System.out.println("Hasil dari a - b = " +(a - b));System.out.println("Hasil dari a / b = " +(a / b));System.out.println("Hasil dari a * b = " +(a * b));System.out.println("Hasil dari a % b = " +(a % b));}}B. Operator Increment dan Decrement

    Operator Increment dan Decrement digunakan untuk menaikan atau menurunkansuatu nilai integer (bilangan bulat) sebanyak satu satuan, dan hanya dapat digunakan padavariabel.

    Ada dua versi operator increment maupun decrement, yaitu prefix dan postfix. Prefixberarti operator digunakan sebelum variabel atau ekspresi, dan postfix berarti operatordigunakan sesudahnya. Penjelasan selengkapnya yaitu:Operator Penggunaan Deskripsi

    Op++ Op dinaikkan nilainya 1 setelah dilakukan operasi++ pada Op

    ++Op Op dinaikkan nilainya 1 sebelum dilakukan operasipada OpOp-- Op diturunkan nilainya 1 setelah dilakukan operasi

    -- pada Op--Op Op diturunkan nilainya 1 sebelum dilakukanoperasi pada Op

    Nama file : IncrementDecrement.javaclass IncrementDecrement{

    public static void main (String[] args){ int i = 1;System.out.println("i : " + i);System.out.println("++i : " + ++i);System.out.println("i++ : " + i++);System.out.println("i : " + i);System.out.println("--i : " + --i);

  • System.out.println("i-- : " + i--);System.out.println("i : " + i);}

    }C. Operator Assignment ( Penugasan )

    Operator assignment dalam Java digunakan untuk memberikan sebuah nilai ke sebuahvariabel. Operator assignment hanya berupa =, namun selain itu dalam Java dikenalbeberapa shortcut assignment operator yang penting, yang digambarkan dalam tabel berikut:

    Operator Penggunaan Ekuivalen Dengan+= Op1 += Op2 Op1 = Op1 + Op2-= Op1 -= Op2 Op1 = Op1 Op2*= Op1 *= Op2 Op1 = Op1 * Op2/= Op1 /= Op2 Op1 = Op1 / Op2%= Op1 %= Op2 Op1 = Op1 % Op2&= Op1 &= Op2 Op1 = Op1 & Op2

    = Op1 = Op2 Op1 = Op1 Op2^= Op1 ^= Op2 Op1 = Op1 ^ Op2> Op2>>>= Op1 >>>= Op2 Op1 = Op1 >>> Op2

    Nama file : Assignment.javaclass Assignment {

    public static void main(String[] args) { int var = 10;int a,b,c;a = b = c = 100; int d,e,f;

  • f = 200; e = f;d = e;

    System.out.println("Nilai var : " + var);System.out.println("Nilai a : " + a);System.out.println("Nilai b : " + b);System.out.println("Nilai c : " + c);System.out.println("Nilai f : " + f);System.out.println("Nilai e : " + e);System.out.println("Nilai d : " + d);int z;char Teks1 = 'a'; // dalam Unicode karakter 'a' direpresentasikan dengan

    angka 97z = Teks1 * 100; // z = 97 * 10;System.out.println("Nilai Teks1 : " + Teks1);System.out.println("Nilai z : " + z);}

    }D. Operator Relasi

    Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yangsering digunakan untuk mengatur alur jalannya sebuah program.

    Operator Penggunaan Deskripsi> Op1 > Op2 Menghasilkan true jika Op1 lebih besar dari Op2< Op1 < Op2 Menghasilkan true jika Op1 lebih kecil dari Op2>= Op1 >= Op2 Menghasilkan true jika Op1 lebih besar atau sama

    dengan Op2

  • Nama file: Relasi.javaclass Relasi{

    public static void main(String[] args) { int x,y,z;x = 100; y = 99; z = 99;System.out.println("Nilai x = "+x);System.out.println("Nilai y = "+y);System.out.println("Nilai z = "+z); // operator sama denganif(y == z ){System.out.println("y sama dengan z"); }else {System.out.println("y tidak sama dengan z");

    }// operator tidak sama denganif(x != y ){System.out.println("x tidak sama dengan y"); }else {System.out.println("x sama dengan y");

    }// operator lebih besar dariif(x > y ){System.out.println("x lebih besar dari y"); }else {System.out.println("x lebih kecil dari y");

    }// operator lebih kecil dariif(y < x ){System.out.println("y lebih kecil dari x"); }else {System.out.println("y lebih besar dari x");

    }// operator lebih besar dari atau sama dengan if(x >= y ){System.out.println("x lebih besar dari atau sama dengan y");}else {System.out.println("x lebih kecil dari atau sama dengany");

    }// operator lebih kecil dari atau sama denganif(y

  • System.out.println("y lebih kecil dari atau sama dengan x"); }else {System.out.println("y lebih besar dari atau sama dengan x");

    }}

    }E. Operator Logical

    Operator ini digunakan untuk ekspresi logik yang menghasilkan nilai boolean.Operator-operator yang digunakan adalah AND ( && ), OR ( ) dan NOT ( ! ).

    A B A B A && BTrue True True TrueTrue False True FalseFalse True True FalseFalse False False FalseNama file : logik.javaclass logik{

    public static void main(String[] args) { booleanBenar = true;boolean Salah = false; System.out.println("HubunganOR (||)");System.out.println("Benar || Benar : " +(Benar||Benar));System.out.println("Benar || Salah : " +(Benar||Salah));System.out.println("Salah || Benar : " +(Salah||Benar));System.out.println("Salah || Salah : " +(Salah||Salah));System.out.println("Hubungan AND (&&)");System.out.println("Benar && Benar : " +(Benar&&Benar));System.out.println("Benar && Salah : " +(Benar&&Salah));System.out.println("Salah && Benar : " +(Salah&&Benar));System.out.println("Salah && Salah : " +(Salah&&Salah));System.out.println("Hubungan NOT (!)"); System.out.println("Kebalikan

  • (NOT) dari Benar adalah: " +!Benar); System.out.println("Kebalikan (NOT)dari Salah adalah: " +!Salah);

    }}

    F. Operator BitwiseOperator ini dalam Java digunakan untuk melakukan manipulasi bit.

    Operator Penggunaan Deskripsi& Op1 & Op2 Bitwise AND Op1 Op2 Bitwise OR^ Op1 ^ Op2 Bitwise XOR~ ~Op Bitwise Complement Op1 >> Op2 Menggeser bit Op1 ke kanan sejauh Op2

    Geser kanan tanpa mempertahankan sign>>> Op1 >>> Op2 (dengan nilai 0 sebagai pengisi bit paling

    kiri)1. Bitwise AND

    Bitwise AND akan menghasilkan bit 1, jika kedua operator bernilai bit 1.Operasi bitwise AND dapat digambarkan sebagai berikut :

    Op1 Op2 Op1 & Op20 0 00 1 01 0 01 1 1

    2. Bitwise ORBitwise OR akan menghasilkan bit 1, jika salah satu operator bernilai bit 1.

    Operasi bitwise OR dapat digambarkan sebagai baerikut :Op1 Op2 Op1 Op20 0 00 1 1

  • 1 0 11 1 1

    3. BITWIS XOR ( Exclusive OR )Bitwise XOR akan menghasilkan bit 1, jika kedua operator memiliki nilai bit yangberbeda. Operasi bitwise XOR dapat digambarkan sebagai berikut :

    Op1 Op2 Op1 ^ Op20 0 00 1 11 0 11 1 0

    4. Bitwise ComplementBitwise Complement akan menghasilkan bit yang berlawanan dengan bit yangdioperasikan. Operasinya dapat digambarkan sebagai berikut :

    Op Op0 11 0

    Nama file : Bitwise.javaclass Bitwise{

    public static void main(String[] args) { int x,y;x = ~100;System.out.println("Nilai negasi x : "+x); x = 17 & 30;System.out.println("Nilai and : "+x); x = 17 | 30;System.out.println("Nilai or : "+x); x = 17 ^ 30;System.out.println("Nilai xor : "+x); x = 111;y = x >> 1;System.out.println("Nilai geser kanan : "+x);x = -111;y = x >> 1;System.out.println("Nilai geser kanan neg : "+x); x = 111;y = x >>> 1;

  • System.out.println("Nilai geser kanan 1 bit 0 : "+x);x = -111;y = x >>> 1;System.out.println("Nilai geser kanan 1 bit 0 neg : "+x); x = 111;y = x
  • MODUL 4

    STATEMENT IF

    4.1 Tujuan

    Mahasiswa dapat memahami pernyataan seleksi dalam java dengan menggunakan IF dandapat menyelesaikan masalah yang berkaitan dengan seleksi IF baik dalam pemrogramanmaupun dalam algoritma.

    4.2 Dasar Teori

    Struktur kontrol digunakan untuk mengatur jalannya alur program sesuai dengan yangkita inginkan. Statemen kontrol dikategorikan menjadi pemilihan, pengulangan, danstatemen peloncatan.

    4.2 Statemen Pemilihan

    Pemilihan digunakan untuk menentukan statemen mana yang akan dieksekusi tergantungdari ekpresi atau kondisi yang dikondisikan. Java menyediakan dua buah ekpresi untukpemilihan yaitu if dan switch. Kedua statemen tersebut digunakan untuk mengontroleksekusi statemen tergantung dari yang ditentukan sebelumnya.

    4.2.1 Statemen If

    Statemen if digunakan untuk menangani pencabangan atau pemilihan statemen yangdidasarkan atas satu, dua, atau lebih dari dua kondisi.

    4.2.1.1 If dengan Satu Kondisi

    Dalam java bentuk umum penulisan statemen if untuk satu kondisi sebagai berikut :

    // apabila hanya terdiri dalam satu statemenIf (kondisi) statemen//apabila lebih dari dua statemenIf (kondisi) {

    StatemenStatemen.............

    }

    Berikut ini contoh program :Nama file1 : DemoIfSatuKondisi1.java

  • class DemoIfSatuKondisi1 {public static void main(String[] args) {

    int a=1, b=10;

    if (a < 5) {System.out.println("Nilai a lebih kecil dari 5");

    }

    if (b < 5) {System.out.println("Nilai b lebih kecil dari 5");

    }}

    }

    Nama file2 : DemoIfSatuKondisi3.java

    class DemoIfSatuKondisi3 {public static void main(String[] args) {

    int tahun = 2008;

    if ((tahun % 4 == 0) &&((tahun % 100 != 0) || (tahun % 400 == 0))) {

    System.out.println("Tahun " + tahun +" merupakan tahun kabisat.");

    }}

    }

    4.2.1.2 If dengan Dua Kondisi

    Pada bentuk ini program menyediakan kondisi tambahan untuk menangani kejadianyang kondisi pertamanya tidak terpenuhi atau bernilai false. Adapun bentukumumnya sbb;

    // Apabila terdiri dari satu statemenIf (kondisi)

    Statemen jika kondisi benarElse

    Statemen jika kondisi salah

    // Apabila terdiri dua buah statemen atau lebih

    If (kondisi) {//Statemen dilakukan jika kondisi benarStatemen

  • Statemen.............

    } Else {

    //Statemen dilakukan jika kondisi salahStatemenStatemen.............

    }

    Berikut ini contoh program :Nama file1 : DemoIfDuaKondisi2.java

    class DemoIfDuaKondisi2 {public static void main(String[] args) {char ch = 'B';

    if (ch == 'a' || ch == 'A' ||ch == 'i' || ch == 'I' ||ch == 'u' || ch == 'U' ||ch == 'e' || ch == 'E' ||ch == 'o' || ch == 'O') {System.out.println(ch + " adalah huruf vokal.");

    } else {System.out.println(ch + " adalah huruf mati (konsonan).");

    }}

    }

    4.2.1.3 If dengan Tiga Kondisi atau Lebih

    Struktur pemilihan jenis ini merupakan pengembangan dari jenis sebelumnya. Di sinistatemen if memiliki lebih dari dua kondisi. Adapun bentuk umumnya sbb :// Apabila terdiri dari satu statemenIf (kondisi1)

    Statemen jika kondisi1 benarElse if (kondisi2)

    Statemen jika kondisi1 salahElseStatemen jika kondisi1 dan kondisi2 salah

    // Apabila terdiri dua buah statemen atau lebih

    If (kondisi1) {//Statemen dilakukan jika kondisi1 benarStatemen1Statemen2.............

    } Else if(kondisi2) {

  • //Statemen dilakukan jika kondisi1 salahStatemen1Statemen2.............

    }Else {

    //Statemen dilakukan jika kondisi1 dan kondisi2 salahStatemen1Statemen2.............

    }

    Berikut ini contoh program :

    Nama file1 : DemoIfTigaKondisi1.java

    class DemoIfTigaKondisi1 {public static void main(String[] args) {

    int bilangan = 4;

    if (bilangan < 0) {System.out.println(bilangan +" merupakan bilangan NEGATIF.");

    } else if (bilangan == 0) {System.out.println("Nilai yang dimasukkan adalah NOL");

    } else { // (bilangan > 0)System.out.println(bilangan +" merupakan bilangan POSITIF.");

    }}

    }

    TUGAS

    1. Buatlah program yang memberikan grade untuk nilai dengan ketentuan sbb :nilai > 90 grade = A80 < nilai

  • MODUL 5

    STATEMENT SWITCH

    5.1 Tujuan

    Mahasiswa dapat menyelesaikan masalah yang berkaitan dengan seleksi, denganmenggunakan pernytaan switch.

    5.2 Teori Dasar

    Statemen switch merupakan statemen alternatif untuk melakukan pemilihan statemen dandigunakan untuk menyederhanakan kekompleksitasan statemen if yang banyak mengandungkondisi. Adapun bentuk umumnya sbb :

    switch( switch_expression ){case case_selector1:

    statement1; //statement2; //block 1. . . //break;

    case case_selector2:statement1; //statement2; //block 2. . . //break;. . .

    default:}statement1; //statement2; //block n. . . //break;

    switch_expression adalah ekspresi integer atau karakter dan case_selector1, case_selector2dan seterusnya adalah konstanta unik dari nilai integer atau karakter.Ketika pernyataan switch ditemukan pada potongan kode program, java pertama kali akanmemeriksa switch_expression, dan menuju ke case yang akan menyamakan nilai yangdimiliki oleh switch_expression. Selanjutnya program akan mengeksekusi pernyataan padadari kode setelah case yang ditemukan sampai menemui pernyataan break, selanjutnya akanmengabaikan pernyataan yang lainnya hingga akhir dari struktur dari pernyataan switch.Jika tidak ditemui case yang cocok, maka program akan mengeksekusi blok default.Sebagaicatatan, bahwa bagian blok default adalah opsional. Sebuah pernyataan switch bisa jadi tidakmemiliki blok kode default.

    CATATAN: Tidak seperti pada pernyataan if, beberapa pernyataan pada struktur pernyataan switch

    akan dieksekusi tanpa memerlukan tanda kurung kurawal ({}).

  • Ketika sebuah case pada pernyataan switch menemui kecocokan, semua pernyataanpada case tersebut akan dieksekusi. Tidak hanya demikian, pernyataan lain yangberada pada case yang sesuai juga akan dieksekusi.

    Untuk menghindari program mengeksekusi pernyataan pada case berikutnya, kitamenggunakan pernyataan break sebagai pernyataan akhir pada setiap blok case.

    Berikut ini contoh program :

    Nama file1 : DemoSwitch3 .java

    class DemoSwitch3 {public static void main(String[] args) {

    int a=2;int b;

    switch(a) {case 1: b = a + 1;case 2: b = a + 2;case 3: b = a + 3;case 4: b = a + 4;case 5: b = a + 5;default: b = 0;

    }

    System.out.println("Nilai b: " + b);}

    }

    Nama file2 : DemoSwitch4 .java

    class DemoSwitch4 {public static void main(String[] args) {

    int a=2;

    switch(a) {case 1: System.out.println("Pilihan pertama");case 2: System.out.println("Pilihan kedua");case 3: System.out.println("Pilihan ketiga");case 4: System.out.println("Pilihan keempat");case 5: System.out.println("Pilihan kelima");default: System.out.println("Pilihan default");

    }}

    }

  • Nama file : DemoSwitch5 .java

    class DemoSwitch5 {public static void main(String[] args) {

    boolean b = true;

    switch (b) {case true: System.out.println("Pilihan TRUE");case false: System.out.println("Pilihan FALSE");

    }}

    }

    TUGAS

    1. Buatlah program dengan menggunakan pernyataan switch untuk memilih Tungganganyang akan dipakai ketika berpergian, sbb:

    - Pilihan 1 Naik Kuda- Pilihan 2 Naik Gerobak Sapi- Pilihan 3 Naik Keledai- Pilihan 4 Naik Onta- Pilihan 5 Naik GajahJika tidak ada diantara pilihan 1 5, beri komentar Anda salah Memilih

  • MODUL 6

    STATEMENT PERULANGAN

    6.1 Tujuan

    Mahasiswa dapat menyelesaikan permasalahan dengan menggunakan perulangan, baikfor, do..while dan while

    6.2 Statemen Pengulangan

    Pengulangan adalah suatu proses di dalam program yang dapat mengeksekusi satu ataubeberapa statemen sama secara berulang sampai ditentukan suatu kondisi untuk berhenti.Dalam java ada tiga jenis struktur pengulangan , yaitu for , while dan do-while.

    6.2.1 Struktur For

    Struktur for pada umumnya digunakan untuk melakukan pengulangan yang banyaknya sudahpasti atau sudah diketahui sebelumnya. Adapun bentuk umumnya sbb :

    for (InitializationExpression; LoopCondition; StepExpression){statement1;statement2;. . .

    }

    Penjelasan :InitializationExpression inisialisasi dari variabel loop.LoopCondition - membandingkan variabel loop pada nilai batas tertentuStepExpression - melakukan update pada variabel loop.

    Berikut ini adalah contoh dari for loop,int i;for( i = 0; i < 10; i++ ){System.out.print(i);}

    Pada contoh ini, pernyataan i=0 merupakan inisialisasi dari variabel. Selanjutnya, kondisii

  • }}

    }

    Nama file1 : DemoFor6 .java

    class DemoFor6 {public static void main(String[] args) {

    int i,j;

    for (i=0, j=4; i < 5; i++, j--) {System.out.println("Nilai i: " + i);System.out.println("Nilai j: " + j);System.out.println();

    }}

    }

    TugasBuatlah Program dengan for dari output dibawah ini :

    1. 1. Kharisma 2. 5 3. 92.Kharisma 4 63.Kharisma 3 34.Kharisma 2 05.Kharisma 1

    4. 1 3 5. 1 +2+3+4+5=151 31 32 22 22 23 13 13 1

    6.2.2 Struktur While

    Struktur while adalah jenis pengulangan yang mendefenisikan kondisi diawal blok yangberarti apa bila kondisi tidak terpenuhi (bernilai false) maka proses pengulangan pun tidakakan pernah dilakukan . Adapun bentuk umumnya sbb :

    while( boolean_expression ){statement1;statement2;. . .

  • }Pernyataan di dalam while loop akan dieksekusi berulang-ulang selama kondisiboolean_expression bernilai benar (true).

    Contoh, pada kode dibawah ini,

    class Demowhile{public static void main(String[] args) {

    int i = 4;while ( i > 0 ){

    System.out.print(i);i--;

    }

    Contoh diatas akan mencetak angka 4321 pada layar. Perlu dicatat jika bagian i--;dihilangkan, akan menghasilkan pengulangan yang terus menerus (infinite loop). Sehingga,ketika menggunakan while loop atau bentuk pengulangan yang lain, pastikan Andamemberikan pernyataan yang membuat pengulangan berhenti pada suatu kondisi.

    Berikut ini contoh program :

    Nama file : DemoWhile1 .java

    class DemoWhile1 {public static void main(String[] args) {

    int i=0;while (i=1) {System.out.print(i);if (i != 1) {

  • System.out.print(" x ");} else {System.out.print(" = ");

    }hasil *= i; // dapat ditulis: hasil = hasil * i;i--;

    }System.out.println(hasil);

    }}

    Nama file : DemoWhileBersarang .java

    class DemoWhileBersarang {public static void main(String[] args) {

    int i=1, j;while (i

  • 6.2.3 Struktur D0 While

    Do-while loop mirip dengan while-loop. Pernyataan di dalam do-while loop akan dieksekusibeberapa kali selama kondisi bernilai benar(true). Perbedaan antara while dan do-while loopadalah dimana pernyataan di dalam do-while loop akan dieksekusi sedikitnya satu kali.Bentuk pernyataan do-while,

    do{statement1;statement2;. . .

    }while( boolean_expression );

    Pernyataan di dalam do-while loop akan dieksekusi pertama kali, dan akan dievaluasi kondisidari boolean_expression. Jika nilai pada boolean_expression tersebut bernilai true,pernyataan di dalam do-while loop akan dieksekusi lagi.

    Berikut ini beberapa contoh do-while loop:Nama file : DemodoWhile .java

    class DemodoWhile{public static void main(String[] args) {int x = 0;do{

    System.out.println(x);x++;

    }while (x

  • int hasil=1;System.out.print(bilangan + "! = ");if (bilangan == 0) {System.out.println(hasil);System.exit(1);

    }

    int i=bilangan;do {System.out.print(i);if (i != 1) {System.out.print(" x ");

    } else {System.out.print(" = ");

    }hasil *= i; // dapat ditulis: hasil = hasil * i;i--;

    } while (i >= 1);System.out.println(hasil);

    }}

    Nama file : DemoDoWhileBersarang.java

    class DemoDoWhileBersarang {public static void main(String[] args) {

    int i=1, j;do {

    j=1;do {

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

    } while (j

  • 4. 1 3 5. 1 +2+3+4+5=151 31 32 22 22 23 13 13 1

  • MODUL 7

    STATEMENT PELONCATAN

    7.1 Tujuan

    Mahasiswa dapat menyelesaikan permasalahan dengan menggunakan peloncatan, baikbreak, continue dan return.

    7.2 Teori Dasar

    Statemen peloncatan digunakan untuk mengontrol jalannya program, lebih tepatnyauntuk memindahkan eksekusi program ke baris kode yang kita kehendaki. Dalam javaterdapat 3 buah statemen peloncatan yaitu break, continue dan return.

    7.3.1 Menggunakan Break

    Statemen break memiliki 3 kegunaan yaitu ;1. Menghentikan runtunan pemilihan pada statemen switch2. Menghentikan proses pengulangan(keluar dari blok pengulangan)3. Keluar dari blok label tertentu

    Nama file : DemoBreak1.java

    class DemoBreak1 {public static void main(String[] args) {

    for (int i=0; i

  • System.out.print(i + " ");if (i % 2 == 0) {continue;

    }System.out.println();

    }}

    }

    7.3.3 Menggunakan Return

    Statemen return digunakan untuk keluar dari eksekusi kode program yang terdapatdalam sebuah method.

    Nama file : DemoReturn.java

    class DemoReturn {public static void main(String[] args) {

    int banyak = 0;

    tulis(banyak);

    }

    // Mendefinisikan method tulis()private static void tulis(int n) {if (n < 1) {System.out.println("Nilai i tidak boleh lebih kecil " +"dari 1");

    return; // keluar dari method tulis()}

    // statemen ini tidak akan dilakukan bila n < 1for (int i=0; i

  • MODUL 8METHOD TANPA PARAMETER

    8.1 Tujuan1. Mahasiswa memahami tentang pengertian sub program2. Mahasiswa dapat membuat sub program sederhana

    8.2 Dasar TeoriMethod (atau dalam beberapa bahasa pemrograman sering disebut fungsi atauprosedur) adalah sub program yang membiarkan seorang programer untuk membagiprogram dengan membagi masalah ke dalam beberapa sub masalah yang bisadiselesaikan secara modular. Dengan cara demikian, maka pembuatan program bisalebih dimanajemen.Kelas (class) adalah program java yang akan dieksekusi. Method ada di dalam kelas.Java mempunyai kumpulan kelas yang sudah dimiliki yang tersimpan di dalam paket-paket. Kumpulan kelas tersebut ada di dalam Java Application Interface (Java API)atau Java class libraries dan beberapa libraries lainnya.

    Format Method Secara Umumtipe_return-value nama_method(parameter1, parameter2, , parameterN){

    deklarasi dan pernyataan;}Elemen yang diperlukan dari deklarasi method adalah tipe kembalian method, nama,kurung buka dan tutup ( ) dan isi method yang diawali dan diakhiri dengan kurungkurawal buka dan tutup { }. Secara umum, deklarasi method mempunyai 6 komponen,yaitu :

    1. Modifier - seperti public, private, dan yang lain yang akan kita pelajari kemudian.2. Tipe kembalian (return type)tipe data dari nilai yang dikembalikan oleh method,

    atau void jika method tidak mempunyai nilai kembalian.3. Nama methodaturan untuk penamaan field diterapkan untuk nama method tetapi

    kesepakatannya adalah sedikit berbeda.

  • 4. Daftar parameter pemisah antar parameter input adalah koma, diawali oleh tipedatanya, yang diletakkan diantara tkita kurung ( daftar parameter. ). Jika tidakada parameter, harus menggunakan kurung buka tutup saja ( ).

    5. Daftar exceptiontidak akan masuk dalam pembahasan di sini6. Isi method, diletakkan di antara kurung kurawal buka dan tutup { }kode-kode

    method, termasuk deklarasi variabel lokal ada di sini.

    8.3 PELAKSANAAN PRAKTIKUMUntuk membuat sebuah method, yang pertama kali perlu diperhatikan adalah namamethod mempunyai aturan yang sama dengan penamaan variabel.

    Contoh : Fungsi untuk menampilkan tulisan saja.public class Fungsi1{

    public static void garis(){System.out.println("================");

    }

    public static void main(String args[]){garis();

    }}Keluaran dari program tersebut adalah

    ================

    Method diatas bersifat static dan bertipe void. Method yang bersifat static bisa langsungdipanggil dengan nama methodnya saja.Sebuah method juga bisa dipanggil lebih dari satu kali.

    8.4 LATIHAN

    Tuliskan program berikut :public class Fungsi2{

    public static void kalimat(){

    System.out.println("Di dalam method kalimat");}public static void main(String args[])

    {kalimat();System.out.println("Di dalam main");kalimat();

    }}

  • Hasil outputDi dalam method kalimatDi dalam mainDi dalam method kalimat

    Program Latihan 2public class Fungsi3{

    public static int jumlah(){int a = 7, b = 15;return (a + b);

    }

    public static void main(String args[]){System.out.println("Hasil pemanggilan method jumlah");

    System.out.println(jumlah());}

    }

    Keluarannya

    Hasil pemanggilan method jumlah22

    Penggunaan sifat static pada method menyebabkan method tidak perlu dipanggil denganpenciptaan obyeknya. Method main dideklarasikan static agar pada saat penggunaantidak perlu menciptakan obyeknya.

    Sebagian method tidak dideklarasikan static. Method yang demikian, bisa dipanggildengan cara menciptakan obyek class dari method tersebut.

    public class Fungsi3a{

    public int jumlah(){int a = 7, b = 15;return (a + b);

    }

    public static void main(String args[]){Fungsi3a obyek = new Fungsi3a();System.out.println("Hasil pemanggilan method jumlah");System.out.println(obyek.jumlah());

    }}

    TUGASModifikasi program diatas dengan menambahkan 3 fungsi yang lain yaitu kurang, kalidan bagi

  • MODUL 9METHOD DENGAN PARAMETER

    9.1 Tujuan

    Mahasiswa memahami tentang pengertian sub program dan dapat membuat sub programsederhana dengan parameter.

    9.2 Dasar Teori

    Method (atau dalam beberapa bahasa pemrograman sering disebut fungsi atau prosedur)adalah sub program yang membiarkan seorang programer untuk membagi programdengan membagi masalah ke dalam beberapa sub masalah yang bisa diselesaikan secaramodular. Dengan cara demikian, maka pembuatan program bisa lebih dimanajemen.Contoh :

    public class FungsiParameter{public static int jumlah(int a){return a;}

    public static void main(String args[]){System.out.println("Hasil pemanggilan methode ");System.out.println(jumlah(5));}}

    Hasil OutputHasil pemanggilan method jumlah5Press any key to continue . . .Parameter pada baris kedua disebut sebagai parameter formal, dan pada baris ke 8disebut parameter aktual.Ada 2 buah parameter yaitu

    parameter formal adalah parameter yang tertulis dalam definisi method Parameter aktual parameter yang berada pada inputan langsung pada saat

    penggunaan method tersebut.

    Parameter bisa lebih dari satu dengan dipisahkan tanda koma,. Yang perlu diperhatikanpada saat pemanggilan method adalah jumlah, urutan dan tipe parameter aktual harussesuai dengan jumlah urutan dan tipe parameter formal.

    Pemberian Variabel Dalam Method

  • Ada dua tipe data variable passing pada method, yaitu pass-by-value dan pass-by-reference.

    Pass-by-value

    Ketika pass-by-value terjadi, method membuat sebuah salinan dari nilai variable yangdikirimkan ke mthod. Walaupun demikian method tidak dapat secara langsungmemodifikasi nilai variable pengirimnya meskipun parameter salinannya sudahdimodifikasi nilainya di dalam method.

    Pass-by-reference

    Ketika sebuah pass-by-reference terjadi, alamat memori dari nilai pada sebuah variabledilewatkan pada saat pemanggilan method. Ini tidak seperti pada pass-by-value, methoddapat memodifikasi variable asli dengan menggunakan alamat memori tersebut,meskipun berbeda nama variable yang digunakan dalam method dengan variable aslinya,kedua variable ini menunjukkan lokasi dari data yang sama.

    9.3 Pelaksanaan Praktikum

    Tuliskan program berikut :

    public class Fungsi4a{

    public static int jumlah(int a){return (a + a);}

    public static void main(String args[]){System.out.println("Panggil method jumlah dengan parameter 5");System.out.println(jumlah(5));System.out.println("Panggil method jumlah dengan parameter 15");System.out.println(jumlah(15));}}

    Hasil OutputPanggil method jumlah dengan parameter 510Panggil method jumlah dengan parameter 1530Press any key to continue . . .

    Program dengan pass-by-valuepublic class TestPassByValue{public static void main(String [] args ){int i =10;

  • System.out.println(i);test(i);System.out.println(i);}public static void test(int j){j=33;}}

    Hasil Output

    1010Press any key to continue . . .

    Pada program diatas kita memanggil method tes dan melewatkan nilai variable i sebagaiparameter. Nilai pada i disalinkan ke variable j pada method. Pada kondisi ini variable jadalah merupakan variable pengganti pada method test, jika nilai j berubah maka nilaipada variable I yang terletak pada main tidak akan ikut berubah walaupun awalnyavariable j merupakan salinan dari variable i.

    Program dengan pass-by-referenceclass TestPassByReference{public static void main( String [] args){//membuat array integerint [] ages ={10,11,12};

    //mencetak nilai arrayfor (int i=0; i

  • }Hasil output101112505152Press any key to continue . . .

    9.4 Latihan

    Kerjakan Program berikut :public class Fungsi4c{

    public float jumlah(int a, float b) //tanpa static{

    return (a+b);}

    public static void main(String args[]){

    Fungsi4 obyek=new Fungsi4();System.out.print("panggil method jumlah dengan parameter 5 dan 1.5, hasilnya =

    ");System.out.println(obyek.jumlah(5, 1.5f));System.out.print("panggil method jumlah dengan parameter 10 dan 2.2, hasilnya =

    ");System.out.println(obyek.jumlah(10, 2.2f));

    }}

    Hasil outputpanggil method jumlah dengan parameter 5 dan 1.5, hasilnya = 6.5panggil method jumlah dengan parameter 10 dan 2.2, hasilnya = 12.2

    Modifikasi program diatas dengan menambahkan satu parameter lagi.

    TUGAS

    1. Buat sebuah method yang digunakan untuk menghasilkan nilai paling kecil dari 3bilangan yang dimasukkan sebagai parameter.

    2. Tugas dari dosen pengampu

  • MODUL 10

    ARRAY SATU DIMENSI

    10.1 TujuanMahasiswa memahami tentang pengertian larik serta dapat membuat program denganmenggunakan larik satu dimensi.

    10.2 Dasar TeoriArray atau larik terdiri atas bagian-bagian komponen yang memiliki tipe data sama.Masing - masing elemen array dapat diakses melalui indeksnya. Dalam java indeksarray selalu bertipe integer yang dimulai dari 0.

    10.3 Pendeklarasian Array

    Array harus dideklarasikan seperti layaknya sebuah variabel. Pada saatmendeklarasikan array, anda harus membuat sebuah daftar dari tipe data, yang diikutioleh sepasang tanda kurung [], lalu diikuti oleh nama identifier-nya. Sebagai contoh,

    int [] jumlahHari;

    atau Anda dapat menempatkan sepasang tanda kurung [] sesudah nama identifier.Sebagai contoh;int jumlahHari [];

    Setelah pendeklarasian array , kita harus membuat array dan menentukan jumlahelemen array Sebagai contoh ;

    //deklarasi array 1 dimensiint [] jumlahHari;

    // deklarasi array 2 dimensiint[][] duaD

    //instantiate obyek atau menentukan jumlah elemen arrayjumlahHari = new int[12];

    duaD= new int[2][3]; // Array multidimensi adalah array dari array , dengan konsep//pengaksesan [noBaris][noKolom]

    Pada contoh diatas, pendeklarasian tersebut akan memberitahukan kepada compilerJava, bahwa identifier jumlahHari akan digunakan sebagai nama array yang berisidata bertipe integer, dan dilanjutkan dengan membuat atau meng-instantiate sebuaharray baru yang terdiri dari 12 elemen. Selain menggunakan sebuah pernyataan newuntuk meng-instantiate array, Anda juga dapat mendeklarasikan, membangun,kemudian memberikan sebuah nilai pada array sekaligus dalam sebuah pernyataan.

  • 10.4 Pengaksesan elemen Array

    Untuk mengakses sebuah elemen dalam array, atau mengakses sebagian dari array,Anda harus menggunakan sebuah angka atau yang disebut sebagai indeks atausubscript. Pada saat memasukkan nilai ke dalam array, sebuah nomor indeks atausubscript telah diberikan kepada tiap anggota array, sehingga program danprogrammer dapat mengakses setiap nilai pada array apabila dibutuhkan. Nilai indeksselalu dalam tipe integer, dimulai dari angka nol dan dilanjutkan ke angkaberikutnya sampai akhir array. Sebagai catatan bahwa indeks didalam array dimulaidari 0 sampai dengan (ukuranArray-1).

    // mengisikan nilai dari setiap elemen array yang adajumlahHari[0] = 31;jumlahHari[1] = 28;

    // menampilkan salah satu elemen arraySystem.out.println("Bulan Maret memiliki " + jumlahHari[1] +" hari.");

    Berikut ini beberapa contoh program Array :

    Nama file : DemoArray1D .javaclass DemoArray1D {public static void main(String[] args) {// mendeklarasikan variabel bertipe array dengan tipe intint [] jumlahHari;// menentukan jumlah elemen arrayjumlahHari = new int[12];

    // mengisikan nilai dari setiap elemen array yang adajumlahHari[0] = 31;jumlahHari[1] = 28;jumlahHari[2] = 31;jumlahHari[3] = 30;jumlahHari[4] = 31;jumlahHari[5] = 30;jumlahHari[6] = 31;jumlahHari[7] = 31;jumlahHari[8] = 30;jumlahHari[9] = 31;jumlahHari[10] = 30;jumlahHari[11] = 31;

    // menampilkan salah satu elemen arraySystem.out.println("Bulan Maret memiliki " + jumlahHari[2] +" hari.");

    }}

  • MODUL 11ARRAY MULTI DIMENSI

    11.1 TujuanMahasiswa memahami tentang pengertian larik serta dapat membuat program denganmenggunakan larik multi dimensi.

    11.2 Dasar TeoriKita juga bisa membuat variabel larik yang tipe elemennya adalah larik. Dengan carademikian, kita membuat larik dua dimensi. Dengan larik dua dimensi, maka kitamempunyai elemen yang berindeks tidak hanya satu, tetapi dua. Kita bisamembayangkan larik dua dimensi tersebut seperti sebuah tabel yang berisi baris dankolom. Penyebutan sel tabel selalu diikuti dengan penyebutan baris berapa dan kolomberapa.Contoh :Diberikan data kelulusan mahasiswa sebuah perguruan tinggi sebagai berikut.

    Jurusan 2006 2007 2008

    Teknik

    Informatika

    110 125 135

    SistemInformasi

    56 75 80

    int data_lulus [2] [3]

    0 1 2

    2006 2007 2008

    [0][0]

    [0][1]

    [0][2]

    [1][0]

    [1][1]

    [1][2]

    TI

    SI

    0

    1

  • 11.3 Pelaksanaan PraktikumTuliskan program berikut :public class ArrayDimensiDua{

    public static void main(String [] args){int [][] piksel = new int[2][3];// mengisi elemen tertentupiksel[0][0] = 70;piksel[0][1] = 18;piksel[0][2] = 45;piksel[1][0] = 75;piksel[1][1] = 66;piksel[1][2] = 89;//menampilkan elemen arrayint i,j;for(i=0;i

  • System.out.println("Data nilai yang dimasukan");for (int i = 0; i < 2; i++){

    for (int j = 0; j < 3; j++)System.out.print(nilai[i][j]+" ");System.out.println();}

    }}

    Program latihan 2program untuk menjumlahkan matrik :import java.util.Scanner;public class JumlahMatriks{

    Scanner masuk = new Scanner(System.in);public void masukData(float data[][]){

    for (int i = 0; i < 3; i++){for (int j = 0; j < 3; j++){

    System.out.print( "("+(i + 1 )+" , "+ (j+1)+")"+ " : ");

    data[i][j]=masuk.nextFloat();}

    }}

    public float[][] tambah(float AA[][],float BB[] []){

    float hasil[][]= new float[3][3];for (int i = 0; i < 3; i++)

    for (int j = 0; j < 3; j++)hasil[i][j] = AA[i][j] + BB[i][j];

    return hasil;}

    public void tampilData(float data[][], char nama){for (int i=0;i

  • jumlah.masukData(B);C = jumlah.tambah(A,B);jumlah.tampilData(C,'C');

    }}Hasil output

    Masukkan data matriks A(1 , 1) : 2(1 , 2) : 3(1 , 3) : 1(2 , 1) : 4(2 , 2) : 2(2 , 3) : 4(3 , 1) : 1(3 , 2) : 2(3 , 3) : 3

    Masukkan data matriks B(1 , 1) : 5(1 , 2) : 4(1 , 3) : 3(2 , 1) : 6(2 , 2) : 2(2 , 3) : 3(3 , 1) : 4(3 , 2) : 1(3 , 3) : 3C[1] [1] = 7.0 C[1] [2] = 7.0 C[1] [3] = 4.0C[2] [1] = 10.0 C[2] [2] = 4.0 C[2] [3] = 7.0C[3] [1] = 5.0 C[3] [2] = 3.0 C[3] [3] = 6.0Press any key to continue . . .

    1. TUGASBuat sebuah program dengan larik untuk menyimpan 10 data mahasiswa yaitu berupaNIM, nama dan jurusan

  • MODUL 12KELAS, OBJECT & METHOD

    12.1 Tujuan

    Mahasiswa dapat membuat obyek yang mengacu ke kelas tersebut.

    12.2 Dasar Teori

    Kelas dapat didefinisikan sebagai cetak biru (blueprint) atau kerangka yangmendefenisikan variabel-variabel (data) dan method-method (perilaku) dari sebuahobjek tertentu. Kelas adalah pola(template) untuk pembuatan objek dan bersifat abstrak,dan objek adalah wujud nyata (instance) dari sebuah kelas.Sebagai contoh : manusia adalah kelas sedangkan objeknya adalah si Udin , si tono sidewi.

    12.2.1 Mendefinisikan kelas

    Dalam java, kelas didefinisikan dengan menggunkan kata kunci class. Berikut inibentuk umum nya :

    Class NamaKelas{Tipe data1;Tipe data2;..

    Tipe dataN;

    Tipe Method1(daftar parameter) {// kode untuk method1}

    Tipe method2(daftar-parameter){// kode untuk method2}..

    Tipe method(daftar-parameter){//kode untuk method N}}

    Data atau variabel yang didefinisikan di dalam sebuah kelas disebut instance variabel.Data akan diakses melalui method method yang ada. Berikut ini adalah contohprogram

    Nama file : DemoKotak1 .java

    class Kotak {double panjang;double lebar;

  • double tinggi;}

    class DemoKotak1 {public static void main(String[] args) {

    double volume;Kotak k = new Kotak();

    // Mengisikan nilai ke dalam data-data kelas Kotakk.panjang = 4;k.lebar = 3;k.tinggi = 2;

    // Menghitung isi/volume kotakvolume = k.panjang * k.tinggi * k.lebar;

    // Menampilkan nilai volume ke layar monitorSystem.out.println(Volume kotak = + volume);

    }}

    12.2.2 Mendefinisikan Method

    Method adalah implementasi dari bagaimana bekerjanya sebuah class. DenganMethod dapat melakukan Manipulasi data, Perhitungan matematik dan Memonitorkejadian dari suatu event .Adapun bentuk umumnya adalah:

    Tipe namaMethod(daftar-parameter) {// kode yang akan ditulis}

    Keterangan :Tipe adalah tipe data yang akan di kembalikan oleh method.

    Dalam java method terbagi menjadi dua yaitu void dan non void . method void adalahmethod yang tidak mengembalikan nilai. Sedangkan method non void adalah methodyang mengembalikan nilai. Berikut ini adalah contoh programnya ;

    Nama file : DemoMethod1 .java

    class Kotak {double panjang;double lebar;double tinggi;

    // Mendefinisikan method void (tidak mengembalikan nilai)

  • void cetakVolume() {System.out.println("Volume kotak = " +(panjang * lebar * tinggi));

    }}

    class DemoMethod1 {public static void main(String[] args) {Kotak k1, k2, k3;

    // instansiasi objekk1 = new Kotak();k2 = new Kotak();k3 = new Kotak();

    // mengisi data untuk objek k1k1.panjang = 4;k1.lebar = 3;k1.tinggi = 2;

    // mengisi data untuk objek k2k2.panjang = 6;k2.lebar = 5;k2.tinggi = 4;

    // mengisi data untuk objek k3k3.panjang = 8;k3.lebar = 7;k3.tinggi = 6;

    // memanggil method cetakVolume() untuk masing-masing objekk1.cetakVolume();k2.cetakVolume();k3.cetakVolume();

    }}

    Nama file : DemoMethod2 .java

    class Kotak {double panjang;double lebar;double tinggi;

    // Mendefinisikan method yang mengembalikan tipe doubledouble hitungVolume() {// menghitung volumedouble vol = panjang * lebar * tinggi;// mengembalikan nilai

  • return vol;}

    }

    class DemoMethod2 {public static void main(String[] args) {

    Kotak k1, k2, k3;

    k1 = new Kotak();k2 = new Kotak();k3 = new Kotak();

    k1.panjang = 4;k1.lebar = 3;k1.tinggi = 2;

    k2.panjang = 6;k2.lebar = 5;k2.tinggi = 4;

    k3.panjang = 8;k3.lebar = 7;k3.tinggi = 6;

    System.out.println("Volume k1 = " + k1.hitungVolume());System.out.println("Volume k2 = " + k2.hitungVolume());System.out.println("Volume k3 = " + k3.hitungVolume());

    }}

    Nama file : SepedaBeraksi .java

    class Sepeda{int kecepatan = 0;int gir = 0;// methodvoid ubahGir(int pertambahanGir) {gir= gir+ pertambahanGir;System.out.println(" Gir:" + gir);}

    void tambahKecepatan(int pertambahanKecepatan) {kecepatan = kecepatan+ pertambahanKecepatan;System.out.println(" Kecepatan:" + kecepatan);}

    public class SepedaBeraksi{public static void main(String[] args) {

  • // Membuat objectSepeda sepedaku = new Sepeda();//memanggil atribut dan memberi nilaisepedaku.kecepatan=10;sepedaku.gir=2;// Memanggil method dan menunjuk nilai parametersepedaku.tambahKecepatan(30);sepedaku.ubahGir(3);}}

    Tugas1. Buat Class bernama Matematika, yang berisi method dengan dua parameter: pertambahan pengurangan perkalian pembagian

    2. Buat Class bernama MatematikaBeraksi, yang mengeksekusi method danmenampilkan: Pertambahan: 20 + 20 = 40 Pengurangan: 10-5 = 5 Perkalian: 10x20 = 200 Pembagian: 21/2 = 10.5 (float or double)

  • MODUL 13REKURSI

    13.1 Tujuan

    Mahasiswa dapat membuat dan mengerti tentang rekursi di pemograman java.

    13.2 Dasar Teori

    Dalam Java, rekursi adalah proses pemanggilan method oleh dirinya sendiri secaraberulang. Rekursi digunakan untuk menyederhanakan algoritma dari suatu prosesperulangan tertentu sehingga penulisan kode programnya akan lebih efesien.Sebagai contoh konsep rekursi adalah perhitungan nilai factorial dari bilangan bulat nonnegative. Proses rekursif dapat kita tuliskan dalam fungsi matematik sbb;

    f! (n) = n * f(n-1)

    dengan ketentuan f!(0) = 1. Merupakan suatu tetapan numerik yang tidak dapat diubah.Apabila n berilai 5 maka proses akan dilakukan program sbb :

    factorial(5) = 5 * factorial(4)factorial(4) = 4 * factorial(3)

    factorial(3) = 3 * factorial(2)factorial(2) = 2 * factorial(1)factorial(1) = 1 * factorial(0)factorial(0) = 1factorial(1) = 1*1factorial(2) = 2*1factorial(3) = 3*2factorial(4) = 4*6factorial(5) = 5*24 = 120

    Nama file : DemoRekursi1 .java

    class Rekursi {int faktorial(int n) {if (n == 0) {return 1;

    } else {return (n * faktorial(n-1));

    }}

    void cetakFaktorial(int n) {System.out.print(n + "! = ");for (int i=n; i>=1; i--) {

    if (i != 1) {System.out.print(i + " x ");

    } else {

  • System.out.print(i + " = ");}

    }System.out.println(faktorial(n));

    }}

    class DemoRekursi1 {public static void main(String[] args) {

    Rekursi obj = new Rekursi();

    obj.cetakFaktorial(5);obj.cetakFaktorial(4);obj.cetakFaktorial(3);

    }}

    Nama file : DemoRekursi3 .javaProgram untuk mengkonversi dari desimal ke biner

    class Rekursi {void DesimalKeBiner(int n) {if (n > 1) {DesimalKeBiner(n / 2);

    }System.out.print(n % 2);

    }}

    class DemoRekursi3 {public static void main(String[] args) {

    Rekursi obj = new Rekursi();

    System.out.print("Bentuk biner dari 1 : ");obj.DesimalKeBiner(1);System.out.println();

    System.out.print("Bentuk biner dari 2 : ");obj.DesimalKeBiner(2);System.out.println();

    System.out.print("Bentuk biner dari 4 : ");obj.DesimalKeBiner(4);System.out.println();

    System.out.print("Bentuk biner dari 6 : ");

  • obj.DesimalKeBiner(6);System.out.println();

    System.out.print("Bentuk biner dari 8 : ");obj.DesimalKeBiner(8);System.out.println();

    System.out.print("Bentuk biner dari 10 : ");obj.DesimalKeBiner(10);System.out.println();

    }}

    Tugas

    1. Buatlah program untuk menentukan nilai perpangkatan (be = b *b e-1 )

    2. Buatlah program untuk konversi bilangan dari decimal ke heksadesimal.

  • MODUL 14

    INPUT DATA MELALUI KEYBOARD DALAM JAVA

    14.1 Tujuan

    Mahasiswa dapat membuat dan mengerti tentang input data di pemograman java.

    14.2 Menginput sebuah karakter

    Untuk membaca input berupa karakter gunakan method read() yang terdapat kelasBufferedReader. Adapun deklarasi method read() sbb;

    Int read() throws IOException

    Berikut ini contoh programnya :Nama file : DemoInputKarakter .java

    import java.io.*;

    class DemoInputKarakter {

    public static void main(String[] args) throws IOException {

    System.out.print("Masukkan sembarang karakter: ");

    char ch;

    InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);

    ch = (char) br.read();

    System.out.println("Karakter yang dimasukkan adalah \'" +ch + "\'");

    }}

    14.3 Menginput sebuah String

    Untuk membaca input string gunakan method readLine() Adapun bentuk umumnyamethod tersebut adalah :

    String readLine() throws IOException

    Berikut ini contoh programnya :Nama file : DemoInputString

  • import java.io.*;

    class DemoInputString {public static void main(String[] args) throws IOException {

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

    String nama;

    InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);

    nama = br.readLine();

    System.out.println("Halo " + nama +", sudahkah Anda mengerti Java?");

    }}

    14.4 Menginput Data Numerik

    Untuk membaca input data numeric sama seperti mengimput data karakter / string,hanya data string hasil input dikonversi ke tipe numeric. Sebagai contoh dapat dilihatdari program sbb;

    Berikut ini contoh programnya :Nama file : DemoInputNumerik1

    import java.io.*;

    class DemoInputNumerik1 {public static void main(String[] args) throws IOException {

    System.out.print("Masukkan sebuah bilangan bulat: ");

    String temp;int bilangan = 0;

    InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);

    // input data dianggap sebagai stringtemp = br.readLine();

    try {// konversi dari string ke integer

  • bilangan = Integer.parseInt(temp);} catch (NumberFormatException nfe) {

    System.out.println("Data yang dimasukkan " +"bukan bilangan bulat");

    System.exit(1);}

    System.out.println("Bilangan yang dimasukkan " +"adalah " + bilangan);

    }}

    Nama file : DemoInputNumerik2

    import java.io.*;

    class DemoInputNumerik2 {public static void main(String[] args) throws IOException {

    System.out.print("Masukkan sebuah bilangan riil: ");

    String temp;double bilangan = 0;

    InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);

    // input data dianggap sebagai stringtemp = br.readLine();

    try {// konversi dari string ke floating-pointbilangan = Double.parseDouble(temp);

    } catch (NumberFormatException nfe) {System.out.println("Data yang dimasukkan bukan bilangan");System.exit(1);

    }

    System.out.println("Bilangan yang dimasukkan " +"adalah " + bilangan);

    }}

  • DAFTAR PUSTAKA

    1. Modul Algoritma dan Pemograman Akakom

    2. Buku mudah belajar java penerbit Informatika

    3. Buku Bagaimana Berfikir Sebagai Ilmuwan Komputer

    4. Modul JENI Ver 2.0 dari Jardiknas