Anda di halaman 1dari 2

UJIAN AKHIR SEMESTER

PENGANTAR PEMROGRAMAN DAN REKAYASA PERANGKAT LUNAK


PROGRAM STUDI TEKNIK INFORMATIKA
UNIVERSITAS BENGKULU
GENAP 2013
Jawablah pertanyaan di bawah ini dengan benar dan tepat! (waktu 90 menit)
1. Cari output dari program ini dan berikan penjelasan.
public class Latihan1 {
public static void main( String[] arg ) {
int k = 16;
double d = 3.5;
System.out.println( d>3 || (k--)<d );
System.out.println(++k);
}
}

2. Buat sebuah for-loop untuk mencetak bilangan bulat dari 1 sampai dengan 80000 kecuali
bilangan bulat yang merupakan kelipatan dari 5; kemudian konversikan for-loop tersebut menjadi
while-loop.
3. Tentukan output yang ditampilkan oleh program ini:
public class Soal3
{
public static void main(String args[])
{
int i = 5, m = 1;
switch (i)
{
case 6: m = m*6;
case 5: m = m*5;
case 4: m = m*4;
case 3: m = m*3;
case 2: m = m*2;
}
String str = String.format("%,d", m*1000);
javax.swing.JOptionPane.showMessageDialog(null,"Hasil:"+str);
}
}

4. Matriks
1 2
3 4
5 6 7
8 9 10
dapat disimpan dalam array dua dimensi yang dideklarasikan sbb.:
int[][] array2d = {{1,2},{3,4},{5,6,7},{8,9,10}};

Pernyataan ini merupakan singkatan dari penggunaan operator new dan inisialisasi array.
1) Tanpa mengubah maknanya, tulis pernyataan di atas dengan menggunakan operator new
secara eksplisit.
2) Buat program Java untuk mencetak array 2D tersebut dengan rapi dan menampilkan
jumlah total unsur-unsurnya.
5. Apa Keluaran dari program berikut ini :
String foo = "foo";

UJIAN AKHIR SEMESTER


PENGANTAR PEMROGRAMAN DAN REKAYASA PERANGKAT LUNAK
PROGRAM STUDI TEKNIK INFORMATIKA
UNIVERSITAS BENGKULU
GENAP 2013
String bar = "foo";
String foo1 = new String("foo");
String bar1 = new String("foo");
String bar2 = "foo";
System.out.println("" + (foo == bar) + " " + (foo == foo1) + " " + (foo1 ==
bar1) + " " + (foo == bar2));
System.out.println("foo" == bar1);

6. Apakah program dibawah ini akan menghasilkan inifinite loop ? Jika tidak, Apa keluarannya?
int i = 25;
for(i > 1)
{
if(i%2 == 0) n/=2;
else n = 3 * n + 1;
}
System.out.println(i);

Jika nilai i diganti dengan 101, apakah yang akan terjadi ?


7. 22 67 12 31 25 98 56 76 65 57
a. Urutkanlah bilangan tersebut dengan menggunakan buble short dan merge short
b. Carilah angka 98 dengan menggunakan binary search dan sequential search
8. Carilah nilai dari f(15) untuk angka Fibonacci dengan menggunakan rekursif:
F(n) = f(n-1) + f(n-2)
9. Buatlah bagan UML sederhana pada kelas cetak tagihan dalam suatu program Bank
10.

Jelaskan perbedaan dari syntax private, default, protected, dan public