Pertemuan 06

1. Describe the Java Throwable class, its subclasses, and the types of exceptions.

Throwable adalah kelas yang ada di package java.lang yang menangani eksepsi dan merupakan turunan dari kelas objek (kelas tertinggi di JAVA).

2. What is the purpose of declaring exceptions?  How do you declare an exception, and where? Can you declare multiple exceptions in a method header?

Ada manfaat ketika mendeklarasikan sebuah exception, yaitu untuk memberitahukan sistem bahwa kesalahan terjadi,sehingga sistem dapat menangkap exception tersebut, dan program dapat berjalan. Tanpa deklarasi exception (catch), maka program akan di-terminate.

Kita dapat mendeklarasikan exception dengan menggunakan try-catch, di mana kita bisa ‘mencoba’ menjalankan beberapa statement tertentu, dan menjalankan statement di dalam catch untuk meng-handle sebuah sistem jika terjadi kesalahan.

Kita juga bisa mendeklarasikan beberapa exception sekaligus, memisahkan beberapa exception tersebut dengan “,” pada method header.

3. What is a checked exception and an unchecked exception?

  • Checked Exception adalah eksepsi yang diantisipasi oleh programmer untuk dihandle dalam program dan terjadi dikarenakan oleh kondisi luar yang siap muncul saat program berjalan. Misalnya membuka file yang tidak ada atau gangguan jaringan
  • Unchecked Exception bisa muncul dari kondisi yang merepresentasikan adanya bug atau situasi yang secara umum dianggap terlalu sulit bagi program untuk menghandlenya. Disebut sebagai unchecked karena kita tidak perlu mengeceknya atau melakukan sesuatu jika kondisi ini terjadi. Eksepsi yang muncul dari kategori situasi yang merepresentasikan bug ini disebut sebagai runtime exception. Misalnya mengakses array melebihi size yang dimilikinya.

4. What is the keyword throw and throws used for?

Keyword throw digunakan untuk melempar suatu eksepsi dalam program, contoh kode:

If   (ada yang salah)

Throw   new Exception(“Terjadi kesalhan nih..!!”);

Sedangkan keyword throws digunakan pada waktu mendeklarasikan suatu method untuk memberitahu bahwa method yang bersangkutan dapat melempar eksepsi dengan tipe yang dideklarasikan oleh keyword throws tersebut. Contoh kode :

void methodLagiPusing() throws IOException, Exception {}
5. Point out the problem in the following code. Does the code throw any exceptions?

5

 tidak mengeluarkan error tapi nilainya menjadi minus (-)

6. Suppose that statement2 causes an exception in the following try-catch block:

6

  • Statement 3 tidak akan dijalankan
  • Statement 4 tidak akan dijalankan
  • Statement 4 akan dijalankan
  • Statement 4 tidak akan dijalankan

7. What is displayed when the following program is run?

7

outputnya error dikarenakan Exception menggunakan “()” yang menyebabkan error dimana “;” yang seharusnya ada didalam parameter itu tetapi menjadi tidak ada.

7

Posted in Uncategorized | Comments Off on Pertemuan 06

Pertemuan 05

  1. What are the differences between a while loop and a do-while loop? Convert the following while loop into a do-while loop.

1 2

1

While adalah pengulangan yang digunakan ketika perulangan tidak diketahui dengan minimal pengulangan adalah 0 kali (0 x). Yang dimana, hasil inputan akan di cek terlebih dahulu, setelah itu baru akan dijalankan. Jika hasilnya False maka hasil outputnya tidak akan muncul.

Sedangkan Do-While adalah pengulangan yang dimana processnya ialah dengan cara menjalakan terlebih dahulu hasil dari inputan yang sudah kita buat setelah itu baru akan di cek. Apakah true or false. Ketika hasilnya False maka hasil outputnya adalah hasil dari inputan pertama sebelum dijalankan dan ketika hasilnya True maka hasil uutputnya juga akan muncul. Do-While memiliki minimal perulangan 1x.

Capture18           Capture14

 

2.   Do the following two loops result in the same value in sum?

11              12

Hasil dari keduanya itu sama, karena statement i++ dan ++i dalam parameter for tidak akan memengaruhi hasil antara keduanya, karena statement tersebut dijalankan setelah sederetan barisan di dalam parameter for sudah selesai dijalankan.

3.   What does the following statement do?

for( ;  ; ){

     do something;

}

For :

  1. Langkah 1 inisialisasi variable, variable ini berfungsi sebagai counter untuk proses pengulangan dan pengecekan kondisi.
  2. Langkah 2 pengecekan variable. Jika kondisi variablenya adalah true maka deretan perintah yang terdapat pada {} akan dijalankan.

Do Something :

  1. Langkah ke-3 menjalankan perintah yang ada pada {}, yaitu perintah-perintah yang ada pada Do something.
  2. Langkah ke-4 memberikan increment/decrement pada variable counter sebagai penanda untuk pengecekan kondisi selanjutnya pada langkah ke-2.

 

4.   Can you always convert a while loop into a for loop? Convert the following while loop into a for loop.

aaaaaaaaa

Tidak semuanya bisa karena for. Perulangan for ditujukan untuk perulangan yang terbatas sedangkan perulangan while ditujukan untuk perulangan yang tidak terbatas

Hasil dari Codingan & Outpunya :

Untitled236232

 

5.   After the continue statement is executed in the following loop, which statement is executed?  Show the output.

 

5

Hasil outputnya

55

 

 

 

Posted in Uncategorized | Leave a comment

Pertemuan 04c

  1. int a=1; int x=0;
    switch(a) {
    case 1: {
    x+=5;
    break;
    }
    case 2: {
    x+=10;
    break;
    }
    case 3: {
    x+=16;
    break;
    }
    case 4: {
    x+=34;
    break;
    }
    }
  2. import java.util.Scanner;

    public class TernOperator{
    public static void main(String[] args){
    Scanner inNilai = new Scanner(System.in);
    int n;
    boolean c;

    do{
    c = true;
    System.out.print(“Input nilai [0..100]: “);
    try{
    n = inNilai.nextInt();
    if(n<0||n>100){
    System.out.println(“Wrong input.”);
    c = false;
    }else{
    if(n>65) System.out.println(“Passed”);
    else System.out.println(“Failed”);
    }
    }catch(Exception e){
    System.out.println(“Input must be a number!”);
    c = false;
    inNilai = new Scanner(System.in);
    }
    }while(!c);
    }
    }

Posted in Uncategorized | Leave a comment

Pertemuan 04b

  1. Assuming that x is 1, show the result of the following Boolean expressions.
  • (true) && (3 > 4)
    False karena salah 1 nilai memilih hasil false.
  • !(x> 0) && (x > 0) menghasilkan nilai false karena kedua expression sebelumnya adalah sama-sama x>0, namun terdapat tanda “!” pada expression pertamanya yang berarti kebalikan dari nilai yang sebenarnya sehingga menghasilkan nilai false ketika dilakukan dengan operasi and (&&) terhadap kedua expression tersebut.
  • (x != 1) == !(x == 1)
    True, karena symbol “==” harus memiliki nilainya yang sama true or false. Yang membandingkan kedua expression itu sama atau tidak.
  • (x> = 0) || (x < 0)
    True, karena symbol “||” itu membandingkan kedua expression, apabila 1 true maka semuanya akan menjadi true.

 

  1. List the precedence order of the Boolean operators. Evaluate the following      expressions:
  • 2 * 2 – 3 > 2 && 4 – 2 > 5

False karena kedua expression ini bernilai false sehingga bila dibandingkan dengan tanda operasi and (&&), maka hasilnya false.

  • 2 * 2 – 3 > 2 || 4 – 2 > 5

False karena kedua expression ini sama-sama bernilai false, sehingga meski dihubungkan dengan tanda operasi or (||), tetap bernilai false. Tanda operasi or (||) memerlukan minimal satu expression untuk menghasilkan nilai true.

  1. Is (x > 0 && x < 10) the same as ((x > 0) && (x < 10))?

True, karena tanda kurung tidak akan memengaruhi nilai akhir jika hanya mengapit satu expression saja.

Is (x > 0 || x < 10 && y < 0) the same as (x > 0 || (x < 10 && y < 0))?

True, karena tanda operasi pembandingan and (&&) bertingkat lebih tinggi dibandingkan or (||).

Posted in Uncategorized | Leave a comment

Pertemuan 04a

  1. Can different types of numeric values be used together in computation?

Bisa karena ada tipe data numerik yang digunakan pada saat tertentu seperti perhitungan damage dari sebuah game dan juga double didalam sebuah perhitungan bunga dan saldo bank.

  1. Assume that int a = 1 and double d = 1.0 and that each expression is independent. What are the results of the following expressions?
  • a = 46 % 9 + 4 * 4 – 2
  • A = 45 + 43 % 5 * (23 * 3 % 2)
  • a %= 3 / a + 3
  • d += 1.5 * 3 + (++a)

no2x  2c

  1. Are the following statements correct? If so, show the output.
  • System.out.println(“25 / 4 is “ + 25 / 4);
    Benar. Hasilnya adalah 6.
  • System.out.println(“25 / 4.0 is “ + 25 / 4.0);
    Benar. Hasilnya adalah 6.25.
  • System.out.println(“3 * 2 / 4 is “ + 3 * 2 / 4);
    Benar. Hasilnya adalah 1.
  • System.out.println(“3.0 * 2 / 4 is “ + 3.0 * 2 / 4);
    Benar. Hasilnya adalah 1.5.

no3

Posted in Uncategorized | Leave a comment

Jawaban Tugas Pertemuan 3b

    1. Does any method in the String class change the contents of the string?
      Tidak, karena ada beberapa method di String class yang berfungsi untuk hal-hal lain, seperti method length();, yang berfungsi untuk mencari panjang sebuah string, atau method compareTo();, yang akan mengembalikan Boolean true jika kedua string sama isinya.
    2. Create a program to determine whether a character is alphanumeric?

[code]import java.util.Scanner;

public class Alpha{
public static void main(String[] args){
Scanner input = new Scanner(System.in);

System.out.print("Input 1 of any character here: ");
String c = input.next();
char chr = c.charAt(0);
int i = (int)chr;

if(i>=48 && i<=57){ System.out.println("Number");
}
else if(i>=65 && i<=91){
System.out.println("Capital alphabet");
}
else if(i>=97 && i<=123){
System.out.println("Small Alphabet");
}
else{
System.out.println("Symbols");
}
}
}
[/code]

    1. Create a program to determine whether a character is in lowercase or uppercase?

[code]import java.util.Scanner;

public class UpperLower{
public static void main(String[] args){
Scanner input = new Scanner(System.in);

System.out.print("Input 1 of any alphabet here: ");
String c = input.next();
char chr = c.charAt(0);
int i = (int)chr;

if (i>=65 && i<=91){
System.out.println("Capital alphabet");
}
else if(i>=97 && i<=123){
System.out.println("Small Alphabet");
}
else{
System.out.println("Invalid input");
}
}
}
[/code]

    1. Describe how to convert hexadecimal to decimal?

[code]import java.util.Scanner;

public class HexToDecimal{
public static void main(String[] args){
Scanner input = new Scanner(System.in);

System.out.print("Input decimal number here: ");
String hexNumber = input.next();
int decimal = Integer.parseInt(hexNumber, 16);

System.out.println("Decimal value is " + decimal);
}
}
[/code]

  1. Evaluate the following method calls:
    1. Math.pow(2,2) = 4.0
      Mencari nilai pangkat, yang hasilnya adalah tipe data double di mana secara default, nilai hasilnya memiliki 1 angka di belakang koma.
    2. Math.max(2, Math.min(3,4)) = 3
      Mencari nilai minimum dari kedua angka yaitu 3 dan 4 melalui fungsi Math.min(3,4);, dan kemudian dicari nilai maksimal dari angka 2 dan hasil pencarian nilai minimum itu melalui Math.max(2,3);, dengan 3 adalah nilai yang didapat dari fungsi Math.min() tersebut.
    3. Math.round(2.5F) = 3.0
      Membulatkan angka, dengan hasil nilai 1 angka di belakang koma. Jika angka desimalnya 5 ke atas, maka akan dibulatkan ke atas. Sebaliknya, jika angka desimalnya 4 ke bawah, maka akan dibulatkan ke bawah.
    4. Math.ceil(-9.49) = -9.0
      Membulatkan nilai ke atas, dengan hasil nilai 1 angka di belakang koma.
    5. Math.floor(7.5) = 7.0
      Membulatkan nilai ke bawah, dengan hasil nilai memiliki 1 angka di belakang koma.
  2. Describe and give example for each method of String
    1. contains();
      Mencari kata/huruf tertentu di dalam string.
      Parameternya: kata1.contains(kata2);, di mana kata1 berisi “Welcome to Java”, dan kata2 berisi “to”, maka hasilnya yang didapat adalah Boolean, yaitu true.
    2. concat();
      Mengombinasi 2 variabel string yang berbeda.
      Parameternya: String kata1 = “Welcome to”, kata2 = “ Java”, kata3 = kata1.concat(kata2);, maka hasilnya ‘Welcome to Java’.
    3. compareTo();
      Membandingkan kedua variabel string yang berbeda.
      Parameternya: kata1.compareTo(kata2);
      Hasilnya: 0 jika kata1 dan kata2 berbeda isinya, atau 1 jika kata1 sama isinya dengan kata2.
    4. format();
      Membentuk sebuah kalimat denga ketentuan yang sudah ditentukan.
      Parameternya: String.format(“Hai %s, senang sekali bertemu denganmu.”, “Geges”);
      Hasilnya: “Hai Geges, senang sekali bertemu denganmu.”
    5. charAt();
      Mengembalikan isi char yang ada di dalam index. Misal, ada kata ‘balon’ di dalam variabel ‘kata’ (‘kata’ bertipe data String), dan masing-masing memiliki indeks 0-4 (‘b’ hingga ‘n’), dan untuk mengembalikan nilai ‘b’, maka parameter yang tepat adalah kata.charAt(0);, maka hasil dari parameter tersebut adalah b.
    6. replace();
      Mengganti semua karakter yang dicari (karakter1) menjadi karakter yang diganti (karakter2).
      Parameternya: “Welcome to Java”.replace("a","o");, maka hasilnya ‘Welcome to Jovo’.
    7. substring();
      Mengambil beberapa karakter dari sebuah indeks string.
      Misal, ada variabel ‘kata’ berisi String ‘Welcome to Java’, untuk mengambil kata ‘to’, maka diperlukan parameter seperti berikut: kata.substring(8,9);.
    8. Trim();
      Mengeliminasi karakter kosong di dalam string.
      Parameternya: “Welcome to Java”.trim();, maka hasilnya ‘WelcometoJava’.
    9. toCharArray();
      Mengubah String menjadi character array.
      Parameternya: Str.toCharArray();
    10. split();
      Membagi sebuah string menjadi beberapa bagian dengan format tertentu.
      Parameternya: String[] a = “Welcome#to#Java”.split(“#”,0);
      Maksudnya: membuat tipe data String ber-array dengan nama variabel ‘a’, yang berisi kata “Welcome to Java” yang akan dipisah menjadi 3 bagian.
    11. toLowerCase();
      Mengubah semua huruf di dalam variabel String menjadi huruf kecil semua.
      Parameternya adalah:
      – langsung dengan kata tersebut: “BaLoN”.toLowerCase();, maka hasilnya ‘balon’.
      – dengan variabel (variabel kata berisi kata “BaLoN”): kata.toLowerCase();, maka hasilnya ‘balon’.
    12. toUpperCase();
      Mengubah semua huruf di dalam variabel String menjadi huruf besar semua.
      Parameternya adalah:
      – langsung dengan kata tersebut: “Welcome to Java”.toUpperCase();, maka hasilnya ‘WELCOME TO JAVA’.
      – dengan variabel (variabel kata berisi kata “Welcome to Java”): kata.toUpperCase();, maka hasilnya ‘WELCOME TO JAVA’.

BINUS University [binus.ac.id]

Posted in Uncategorized | Leave a comment

Jawaban Tugas Pertemuan 3a

    1. Why does the System class not need to be imported?
      Kelas System di Java tidak perlu di-import karena System class berisi fungsi-fungsi dasar yang diperlukan dalam menjalankan Java, seperti ‘System.out.println();’, yang artinya kita memanggil fungsi print dengan baris baru di bagian akhirnya dari kelas System. Sama fungsinya dengan Math class, yang tidak perlu di-import karena memang diperlukan dalam pengoperasian dasar di dalam program Java.
    2. What is the differences between the following two import statements:
      1. import java.util.Scanner;
        Fungsinya adalah untuk mengimpor hanya library class Scanner, yang merupakan class yang difungsikan untuk meminta input dari user.
      2. import java.util.*;
        Fungsinya untuk mengimport semua library class yang ada di ‘java.util’.
    3. Explain the output syntax:
      1. System.out.println();
        Setelah di print sistem langsung memindahkan kursor ke barisan baru.
      2. System.out.print();
        Setelah di print sistem akan melanjutkan kursor setelahnya.
      3. System.out.printf();
        Setelah di print sistem langsung memindahkan kursor ke barisan baru tetapi dengan menggunakan format.
        Contohnya: %5.2f = sistem akan mengprint 5 digit dengan 2 angka di belakang koma atau titik.
    4. If a NoClassDefFoundError occurs when you run a program, what is the cause of the error?
      Class yang dicari tidak ditemukan.
    5. If a NoSuchMethodError occurs when you run a program, what is the cause of the error?
      Method yg dimasukkan tidak valid.
    6. How to compile and run program in Java using command prompt?
      Dengan cara sebagai berikut:

      1. COMPILE
        Gunakan perintah ‘javac <namafile>.java’ untuk compile file Java menjadi Java bytecode.
      2. RUN
        Gunakan perintah ‘java <namafile>’ untuk menjalankan file yang sudah di-compile menjadi Java bytecode.
    7. Identify and fix the errors in the following code:

[code]public class Sample {
public static void <b>main</b> (String[] args){
System.out.printl<b>n</b>("Welcome to Java!")<b>;</b>
}
}[/code]

(Jawaban di-bold)

 

BINUS University [binus.ac.id]

Posted in Uncategorized | Leave a comment

Quiz Algorithm and Programming

1. Library in Java/Java Library

Library diibaratkan sebagai referensi yang biasanya kita cari ketika kita akan memecahkan sebuah masalah. Sama halnya dengan Java, Java memiliki Library, atau biasa disebut dengan Java Class Library. Java Class Library (JCL) adalah sekumpulan referensi (library) yang dapat di-load secara dinamis, yang artinya kita dapat load library yang diperlukan.
Ada 3 kegunaan JCL yang dibutuhkan di dalam Java Platform, yaitu:
(1) Menyediakan fasilitas yang berguna, yang diperlukan oleh programmer
(2) Menyediakan interface yang abstrak yang akan sangat dibutuhkan oleh perangkat keras dan sistem operasi
(3) Mampu mengemulasikan fitur yang tidak ada dalam platform tersebut, dalam hal ini: Java Platform

2. Java Identifiers

Java memiliki Identifier tersendiri, seperti halnya bahasa pengkodean atau pemrograman lainnya. Untuk Java sendiri, Identifier yang sah/valid diawali dengan huruf (besar atau kecil), garis bawah (_), atau dengan tanda dolar ($), namun identifier Java boleh terdiri atas huruf, angka, garis bawah (_), dan tanda dolar ($). Identifier di dalam Java tidak boleh ada tanda operator seperti +, -, *, dan /, dan identifier tersebut bersifat case-sensitive, jadi variabel seperti Variabelku dan variabelku adalah kedua variabel yang berbeda.

Berikut adalah contoh identifier, yang valid, maupun yang invalid:
– Valid:
(1) Variabelku
(2) variabelku
(3) _8bola
(4) $ini
– Invalid:
(1) 8 bola (ada spasi, dan angka di depannya)
(2) 8bola (ada angka di depannya)
(3) Angka Ini (ada spasi)
(4) aku+kamu (ada tanda operator)

3. Fungsi di dalam Java

Java memiliki beberapa fungsi, di antaranya adalah static, final, Class, dan package; dan berikut penjelasan dari fungsi tersebut:
a> Static
Fungsi yang dapat dikategorikan sebagai method, untuk mengambil semua data yang ada dalam parameter, dan melakukan komputasi dari parameter tersebut.
Contohnya adalah sebagai berikut:

[code]
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, welcome to Java!");
}
}
[/code]

b> Final
Fungsi Final di dalam Java dapat digunakan dalam 3 hal, yaitu sebagai method, class, dan juga variable.
– Method
Final, bila difungsikan sebagai method, membuat class tersebut tidak dapat di-override (ditiban fungsinya) atau disembunyikan oleh anak kelasnya (subclass)
Contoh:

[code]
public class Base
{
public void m1()
public final void m2() {…}

public static void m3() {…}
public static final void m4() {…}
}

public class Derived extends Base // subclass-nya Base
{
public void m1() {…} // Ok, override Base#m1()
public void m2() {…} // forbidden

public static void m3() {…} // OK, hide Base#m3()
public static void m4() {…} // forbidden
}
[/code]

– Class
Bila difungsikan sebagai class, maka class tersebut tidak dapat di-extend ke dalam subclass.
Contoh:

[code]
public final class MyFinalClass {…}

public class ThisIsWrong extends MyFinalClass {…} // forbidden
[/code]

– Variable
Variabel yang ditambahkan dengan parameter final di depannya, maka variabel tersebut tidak dapat diubah nilainya.
Contoh:

[code]
public class Final {
public static void main(String[] args) {
final double pi = 3.14;
pi = 4; // forbidden
}
}
[/code]

c> Class
Class adalah fungsi di mana kita akan memberikan parameter-parameter yang akan dihitung/dikomputasi. Class dapat diatur aksesnya dengan menambahkan parameter seperti public dan private.
Contoh:

[code]
public class Kelas {
public static void main (String[] args) {
// ini fungsi kelas
System.out.println("Hello Kelas!");
}
}
[/code]

d> Package
Package adalah parameter akses di mana bila di-input ke dalam class, type, dan method, maka objek kelas hanya dapat dideklarasikan dan dimanipulasi dengan kode dalam package yang sama (bila diimplementasikan ke dalam class), atau hanya bisa diakses di dalam package yang sama (bila diimplementasikan ke dalam type dan method).

4. String[] args? Apa fungsinya?
String[] args adalah argumen yang dipakai sebagai array dari objek String. Method ‘String[] args’ ini identik dengan fungsi di mana ‘String[] args’ difungsikan sebagai variabel, di mana keduanya ini akan memiliki tujuan yang sama, yaitu untuk memproses data-data yang bertipe String, yang nantinya akan ditampilkan di dalam layar. Jadi, terdapat 2 contoh di sini:

[code] // sebagai class
public class Kelas {
public static void main(String[] args) {
System.out.println("Ini kelas");
}
}
[/code]
[code] // sebagai variable
public class KelasDua {
public void main() {
String[] args = new String[2];
args[1] = "hello";
args[2] = "kelas dua";

System.out.println("Output: "+args[0]+args[1]);
}
}
[/code]

5. Tentang JVM, JDK, Source Program, dan Compiler
a> JVM (Java Virtual Machine)
Java Virtual Machine atau JVM adalah sekumpulan program yang digunakan untuk menjalankan/mengeksekusi Java bytecode dari platform komputer manapun, seperti Windows, Linux, Mac, Android, dlsb.
b> JDK (Java Development Toolkit)
Java Development Toolkit atau JDK adalah sekumpulan dari program yang terpisah, yang digunakan untuk melakukan pengembangan dan mencoba program berbasis Java.
c> Source Program
Source Program, atau dengan kata lain sebagai Source Code, ialah kode sumber dari program yang bersangkutan, yang dibuat/dikembangkan/diedit oleh developer sebelum dilakukan kompilasi (compiling).
d> Compiler
Compiler adalah sekumpulan program yang bertugas untuk mengubah Java Source Code menjadi Java bytecode sebelum nantinya hasil compiling-nya akan dieksekusi oleh JVM.

 

BINUS UNIVERSITY : www.binus.ac.id

Posted in Uncategorized | Leave a comment

Hello world!

Welcome to Binusian blog.
This is the first post of any blog.binusian.org member blog. Edit or delete it, then start blogging!
Happy Blogging 🙂

Posted in Uncategorized | 1 Comment