Anda di halaman 1dari 16

JAWABAN SOAL TUGAS UTS LAB PEMROGRAMAN I (JAVA FUNDAMENTAL)

NIM : 10515014
Nama : fachri agustian suhliandana
Kelas : LP1-3

BAB 1 (Halaman 15)


Jawaban Soal C

* Prosedural :
- program adalah suatu urutan instruksi.
Prosedural fokus pada bagaimana cara komputer menangani masalah.

1. fokus utama pada fungsi dan prosedur yang beroperasi pada data
2. program besar terbagi dalam program unit kecil yang disebut fungsi
3. Data dan fungsi diperlakukan sebagai entitas terpisah
4. Data bebas bergerak di sekitar sistem dari satu fungsi lain
5. Data bersifat pasif
6. Program desain dengan pendekatan “Top Down” yaitu tugas-tugas kompleks
dipecah menjadi bagian yang lebih kecil, sampai sub-tugas tersebut mudah diimplementasikan

 OOP :

- Merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan
fungsi di dalam paradigminidibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika
pemrograman terstruktur.

1. Menekankan pada data yang sedang beroperasi dan tidak fungsi atau prosedur
2. Program dibagi ke dalam apa yang disebut objek
3. Data dan fungsi diperlakukan sebagai entitas terpisah
4. Data tersemmbunyi dan tidak dapat diakses oleh fungsi eksternal
5. Objek-objek dalam OOP bersifat aktif
6. Program desain pendekatan “Buttom Up” yaitu memuat prosedur-prosedur
untuk menyelesaian tugas-tugas yang sederhana, kemudian menggabungkan prosedur-prosedur
tersebut dalam prosedur yang lebih kompleks, sampai fungsionalitas yang ingin tercapai

1
Prosedural biasa digunakan untuk membuat program yang sederhana sementara OOP untuk yang lebih
kompleks karena cara berfikirnya bisa seperti manusia(natural).

Jawaban Soal B
.java adalah ekstensi untuk coding bahasa pemrograman java yang bisa dibuat dan di edit di texteditor
sedangkan .class adalah ekstensi untuk hasil kompilasi dari file .java yang di eksekusi oleh komputer
Jawaban Soal A
1. JDK 1.0 (23 Januari 1996)
Codename Oak. Rilis awal Versi stabil pertama adalah JDK 1.0.2. ini disebut Java 1.

2. JDK 1.1 (19 Februari, 1997)


Tambahan:
Suatu retooling luas model acara AWT
Inner classes ditambahkan ke bahasa
JavaBeans
JDBC
RMI
Reflection yang Introspeksi saja, tidak ada modifikasi pada saat runtime itu mungkin.

3. J2SE 1.2 (8 Desember 1998)


Codename Playground. Ini dan rilis selanjutnya sampai J2SE 5,0 dimana Java 2 dan nama
versi "J2SE" (Java 2 Platform, Standard Edition) diganti JDK untuk membedakan platform dasar dari J2EE
(Java 2 Platform, Enterprise Edition) dan J2ME (Java 2 Platform , Micro Edition).
Tambahan utama meliputi:

strictfp keyword
API swing grafis telah diintegrasikan ke dalam Class inti
Sun JVM yang dilengkapi dengan compiler JIT untuk pertama kalinya
Java Plug-in
Java IDL, sebuah implementasi IDL untuk interoperabilitas CORBA
Koleksi framework

4. J2SE 1.3 (8 Mei 2000)

2
Codename Kestrel. Perubahan paling menonjol adalah:

HotSpot JVM termasuk (HotSpot JVM pertama kali dirilis pada bulan April, 1999 untuk
J2SE 1.2 JVM) RMI adalah dimodifikasi untuk mendukung kompatibilitas opsional dengan CORBA
JavaSound
Java Penamaan dan Direktori Interface (JNDI) termasuk dalam perpustakaan inti (sebelumnya tersedia
sebagai ekstensi)
Java Platform Debugger Arsitektur (JPDA)
Syntetic proxy classes

5. J2SE 1.4 (6 Feb 2002)


Codename Merlin. Ini adalah rilis pertama dari platform Java yang dikembangkan di
bawah Java Community Process sebagai JSR 59. Perubahan besar mencakup:
Perubahan bahasa
Assert keyword
Perbaikan Library
Regular expressions model setelah ekspresi reguler Perl expressions
Exeption chaining memungkinkan pengecualian untuk merangkum exception tingkat-
bawah yang asli Internet Protocol versi 6 (IPv6) dukungannon-blocking IO (bernama NIO) (input / Output
baru)
Logging API
Gambar I / O API untuk membaca dan meletakan gambar dalam format seperti JPEG
dan PNG
Meng-integrasikan XML parser dan XSLT prosesor (JAXP)
Meng-integrasikan keamanan dan ekstensi Cryptography (JCE, JSSE, JAAS)
Java Web Start disertakan (Java Web Start pertama kali dirilis pada bulan Maret, 2001
untuk J2SE 1.3) (Ditentukan dalam JSR 56.)Preferensi API (java.util.prefs)

6. J2SE 5.0 (September 30, 2004)

3
Codename Tiger. Awalnya nomor 1,5, yang masih digunakan sebagai nomor versi internal. Versi
ini dikembangkan di bawah JSR 176.
J2SE 5.0 memasuki nya akhir-hidup pada tanggal 8 April 2008 dan tidak lagi didukung oleh Sun pada 3
Nopember 2009 .
Tiger menambahkan sejumlah fitur bahasa baru yang signifikan:
Generics: Menyediakan waktu kompilasi (static) safety type untuk koleksi dan menghilangkan kebutuhan
untuk kebanyakan typecasts (type conversion). (Ditentukan oleh JSR 14.)
Metadata: Juga disebut penjelasan; memungkinkan konstruksi bahasa seperti kelas dan metode
yang harus ditandai dengan data tambahan, yang kemudian dapat diproses oleh metadata-sadar utilitas.
(Ditentukan oleh JSR 175.)
Autoboxing / unboxing: konversi otomatis antara tipe primitif (seperti int) dan kelas wrapper
primitif (seperti Integer). (Ditentukan oleh JSR 201.)
Enumerations: enum keyword menciptakan sebuah typesafe, memerintahkan daftar nilai
(seperti Day.MONDAY, Day.TUESDAY, dll). Sebelumnya ini hanya dapat dicapai oleh non-bilangan bulat
typesafe konstan atau kelas secara manual dibangun (enum typesafe pola).(Ditentukan oleh JSR 201.)
Varargs: Parameter terakhir dari sebuah method sekarang dapat dideklarasikan menggunakan
nama jenis diikuti oleh tiga titik (misalnya void drawtext(string... lines)). Dalam memanggil code sejumlah
angka dari parameter jenis yang dapat digunakan dan mereka kemudian ditempatkan dalam array yang
akan dilewatkan ke metode, atau sebagai alternatif kode panggilan dapat melewatkan sebuah array dari
tipe tersebut.
Enhance untuk setiap loop: untuk sintaks loop yang diperpanjang dengan sintaks khusus untuk
iterasi setiap anggota baik array atau Iterable, seperti pada koleksi class standar, menggunakan
konstruksi dalam bentuk:
void displayWidgets (Iterable<Widget> widget) {
for (widget w: widgets) {
w.display();
}

Contoh iterasi ini atas Iterable Object widgets, menugaskan setiap item yang pada gilirannya
untuk variabel w, dan kemudian memanggil Widget method display() untuk setiap item.

Perbaiki semantik sebelumnya yang rusak dari Java Memori Model, yang mendefinisikan bagaimana

4
ancaman berinteraksi melalui memori. Static imports
Ada juga perbaikan untuk library standar:
Otomatis stub generasi pada objek RMI.
Swing: skinnable look and feel baru, yang disebut synth.
Utilitas concurrency dalam package java.util.concurrent.
Scanner class untuk parsing dari berbagai data input stream dan buffer.
Java 5 adalah rilis terakhir dari Java untuk secara resmi mendukung Microsoft Windows 9x line (Windows
95, Windows 98, Windows ME). Secara tidak resmi, Java SE 6 Update 7 (1.6.0.7) adalah versi terakhir dari
Java yang akan ditampilkan bekerja pada keluarga sistem operasi (OS).

7. Java SE 6 (11 Desember 2006)


Codename Mustang. Pada versi ini, Sun diganti nama "J2SE" dengan Java SE dan
menghilangkan ".0" dari nomor versi. Penomoran internal untuk pengembang tetap 1.6.0. Versi ini
dikembangkan di bawah JSR 270. Selama tahap pengembangan, baru dibangun termasuk perangkat
tambahan dan perbaikan bug yang dirilis mingguan. Versi beta yang dirilis pada bulan Februari dan Juni
2006, mengarah ke rilis final yang terjadi pada tanggal 11 Desember 2006.Perubahan besar disertakan
dalam versi ini:
Dukungan untuk versi Win9x tua turunkan. Secara tidak resmi Java 6 Update 7 adalah rilis
terakhir dari Java ditunjukkan untuk bekerja pada versi Windows. Hal ini diyakini terjadi karena
perubahan besar dalam update 10.
Dukungan Bahasa Scripting: Generic API untuk integrasi yang erat dengan bahasa scripting, dan built-in
Mozilla javaScript Rhino
Peningkatan kinerja yang dramatis untuk platform inti, dan Swing.
Peningkatan Layanan Web dukungan melalui JAX-WS
Dukungan JDBC 4.0.
Java Compiler API: sebuah API yang memungkinkan program Java untuk memilih dan memanggil
compiler pemrograman Java.
Upgrade dari JAXB ke versi 2.0: Termasuk integrasi Stax parser. Dukungan untuk penjelasan pluggable
Banyak perbaikan GUI, seperti integrasi SwingWorker di dalam API, tabel pemilahan dan
penyaringan, dan Swing double-buffering (menghilangkan efek wilayah abu-abu). Perbaikan JVM
meliputi: Sinkronisasi dan Optimasi kinerja compiler, algoritma baru dan upgrade untuk algoritma
pengumpulan sampah (gerbage collection) yang ada, dan kinerja aplikasi start-up.

5
8. Java SE 7 (Juli 28, 2011)
Java 7 (Dolphin codename ) adalah sebuah update besar ke Java yang diluncurkan pada tanggal 7
Juli 2011 dan tersedia dibuat bagi para pengembang pada tanggal 28 Juli 2011. Masa perkembangannya
diorganisir menjadi tiga belas milestone. Pada tanggal 18 Februari 2011, 13 milestone (milestone
terakhir) yang tercapai . Rata-rata, 8 pengerjaan (yang umumnya termasuk perangkat tambahan dan
perbaikan bug) yang dirilis per milestone. Daftar fitur di proyek OpenJDK 7 daftar banyak perubahan
fitur.Fitur tambahan untuk Java 7 meliputi:
JVM dukungan untuk bahasa dinamis, berikut prototipe pekerjaan saat ini dilakukan pada Virtual
Machine Multi Bahasa Compressed pointer 64-bit Tersedia di Java 6 dengan-XX: UseCompressedOops
Perubahan kecil bahasa (dikelompokkan dalam sebuah proyek bernama Coin) :
String di switch
Manajemen sumber (source code) secara otomatis di try-statment
Peningkatan jenis inferensi untuk penciptaan generik
Metode varargs deklarasi sederhana
Literal bilangan Biner
Mengijinkan menggaris bawahi di literal numerik
Penangkapan beberapa tipe exception dan rethrowing exception dengan memeriksa tipe yang
ditingkatkan
Concurrency utilitas di bawah JSR 166
File library I / O baru untuk meningkatkan kemandirian platform dan menambahkan dukungan untuk
metadata dan link simbolik. Paket-paket baru java.nio.file dan java.nio.file.attribute Dukungan Library-
level untuk algoritma kriptografi kurva elliptic Sebuah pipeline XRender untuk Java 2D, yang
meningkatkan penanganan fitur khusus untuk GPU yang modern
Platform API baru untuk grafis fitur awalnya direncanakan untuk rilis di Jawa versi 6u10
Peningkatan Library-level dukungan untuk protokol jaringan baru, termasuk SCTP dan
Socket Direct Protokol
Upstream update untuk XML dan Unicode

Lambda (implementasi Java fungsi lambda), Jigsaw (implementasi Java module), dan
bagian dari Java 7. Java 8 akan dirilis dengan fitur yang tersisa di musim panas 2013.

6
9. Java 7 update
Rencana Oracle mengeluarkan update untuk Java 7 secara triwulanan
Rilis Tanggal Rilis Keteangan
Java SE 7 2011-07-07 Awal rilis
Java SE 7 Update 1 2011-10-18 20 perbaikan security, perbaikan bug lainnya
Java SE 7 Update 2 2011-12-12 perbaikan bug

10. Java SE 8
Java 8 diharapkan pada musim panas 2013 dan akan mencakup fitur minimal yang direncanakan
untuk Java 7 tetapi kemudian ditangguhkan. Modularisasi dari JDK di bawah Jigsaw Proyek
Dukungan language-level untuk ekspresi lambda di bawah Proyek Lambda. Ada perdebatan yang sedang
berlangsung dalam komunitas Java untuk menambahkan dukungan untuk ekspresi lambda. Sun
kemudian. menyatakan bahwa ekspresi lambda akan dimasukkan di Java 8 dan meminta komunitas
untuk memperbaiki fitur tersebut. Bagian dari Coin project yang tidak termasuk di Jawa 7 Integrasi
ketat dengan JavaFX.

11. Java 9
Pada JavaOne 2011, Oracle membahas fitur yang mereka harapkan untuk memiliki di Java 9,
termasuk dukungan yang lebih baik untuk tumpukan (stack) multi-gigabyte, integrasi kode asli yang lebih
baik, dan self-tuning JVM.

BAB 2 (Halaman 49)


Jawaban Soal C

Jawaban Soal B
Hallo Hallo Bandung
public class Bab2SoalB {
public static void main(String[] args) {
System.out.println("Halo-Halo Bandung");
System.out.println("Ibu Kota Jawa Barat");
}
}

Jawaban Soal A

7
Identitas Mahasiswa
===================
NIM : 10515014
Nama : Fachri Agustian Suhliandana
Kelas : LP1-3

public class IdentitasMahasiswa {

public static void main(String[] args) {

System.out.println("Identitas Mahasiswa");
System.out.println("===================");
System.out.println("NIM : 10515014");
System.out.println("Nama :Fachri Agustian
Suhliandana");
System.out.println("Kelas : LP1-3");
}
}...

BAB 3 (Halaman 77-78)


Jawaban Soal C
public class Deklarasi {
public static void main(String[] args) {
char index = 'A';
boolean lulus = false;
double nilaiMhs = 10.89;
String namaMhs = "Chandra";
}

Jawaban Soal B
int abc=int bcd; | SALAH

8
String nama; | BENAR
String nim=new nim("001"); | SALAH
Int x; | SALAH
boolean ket="true"; | SALAH
double a=30/7; | BENAR
string kelas; | SALAH
char index="a"; | SALAH
double luas persegi=5*7; | SALAH
int xyz=0.5; | SALAH
Jawaban Soal A
Nilai mhs ke-1 : 85
Nilai mhs ke-2 : 77
Nilai mhs ke-3 : 60
Nilai mhs ke-4 : 51
Nilai mhs ke-5 : 25

public class OperatorKondisi {


public static void main(String[] args) {
int satu = 85, dua = 77, tiga = 60, empat = 51, lima = 25;
char index1 = 'A', index2 = 'B', index3 = 'C', index4 = 'D', index5 = 'E';
index1 = (satu >= 80) ? 'A' : (satu >= 70) ? 'B' : (satu >= 60) ? 'C' :
(satu >= 50) ? 'D' : 'E';
index2 = (dua >= 80) ? 'A' : (dua >= 70) ? 'B' : (dua >= 60) ? 'C' :
(dua >= 50) ? 'D' : 'E';
index3 = (tiga >= 80) ? 'A' : (tiga >= 70) ? 'B' : (tiga >= 60) ? 'C' :
(tiga >= 50) ? 'D' : 'E';
index4 = (empat >= 80) ? 'A' : (empat >= 70) ? 'B' : (empat >= 60) ?
'C' : (empat >= 50) ? 'D' : 'E';
index5 = (lima >= 80) ? 'A' : (lima >= 70) ? 'B' : (lima >= 60)
? 'C' : (lima >= 50) ? 'D' : 'E';

System.out.println("Nilai mhs ke-1 : " + satu);


System.out.println("Index mhs ke-1 : " + index1);

9
System.out.println("Nilai mhs ke-2 : " + dua);
System.out.println("Index mhs ke-2 : " + index2);
System.out.println("Nilai mhs ke-3 : " + tiga);
System.out.println("Index mhs ke-3 : " + index3);
System.out.println("Nilai mhs ke-4 : " + empat);
System.out.println("Index mhs ke-4 : " + index4);
System.out.println("Nilai mhs ke-5 : " + lima);
System.out.println("Index mhs ke-5 : " + index5);
}
}

BAB 4 (Halaman 98-99)


Jawaban Soal C
import javax.swing.JOptionPane;
public class ShowMessage {
public static void main(String[] args) {
String nama, alamat, ttl;

nama = JOptionPane.showInputDialog(null, "Masukkan Nama Anda");


alamat = JOptionPane.showInputDialog(null, "Masukkan Alamat Anda");
ttl = JOptionPane.showInputDialog(null, "Masukkan Tempat & Tanggal Lahir");
System.out.printf(nama + ", " + alamat + " , " + ttl);

}
}
Jawaban Soal B
import java.io.BufferedReader;
import java.io.InputStreamReader;
import javax.swing.JOptionPane;
public class NgitungSegitiga {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
double alas, tinggi, luas = 0;
try {

System.out.println("Masukkan Alas : ");


alas = Double.parseDouble(br.readLine());
System.out.println("Masukkan Tinggi : ");
tinggi = Double.parseDouble(br.readLine());
luas = (alas * tinggi) / 2;

10
JOptionPane.showMessageDialog(null, "Luas Adalah : " + luas, "Informasi",
JOptionPane.INFORMATION_MESSAGE);
} catch (Exception e) {
}
}
}
Jawaban Soal A
import java.util.Scanner;
public class Perbandingan {
public static void main(String[] args) {
double a, b;
String lebihbesar;
Scanner input = new Scanner(System.in);

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


a = input.nextDouble();
System.out.println("Masukkan Nilai B : ");
b = input.nextDouble();
lebihbesar = (a > b) ? "Nilai A lebih besar dari B" : (a < b) ? "Nilai B
lebih besar dari A" : "Nilai A dan B sama besar";

System.out.printf(“lebihbesar”);

BAB 5 (Halaman 115-117)


Jawaban Soal C
import java.util.Scanner;
public class MengetahuiAngkaInput {
public static void main(String[] args) {

11
int angka = 0;

Scanner input = new Scanner(System.in);


System.out.println("Masukkan Angka");
angka = input.nextInt();

switch (angka) {
case 1:
System.out.println("Satu");
break;
case 2:
System.out.println("Dua");
break;
case 3:
System.out.println("Tiga");
break;
case 4:
System.out.println("Empat");
break;
case 5:
System.out.println("Lima");
break;
case 6:
System.out.println("Enam");
break;
case 7:
System.out.println("Tujuh");
break;
case 8:
System.out.println("Delapan");
break;
case 9:
System.out.println("Sembilan");
break;
case 10:
System.out.println("Sepuluh");
break;
default:
System.out.println("Input Salah");
}
}
}

12
import java.util.Scanner;
public class MengetahuiAngkaInput2 {
public static void main(String[] args) {
int angka = 0;
Scanner input = new Scanner(System.in);
System.out.println("Masukkan Angka");
angka = input.nextInt();
if (angka == 1) {
System.out.println("Satu");
} else if (angka == 2) {
System.out.println("Dua");
} else if (angka == 3) {
System.out.println("Tiga");
} else if (angka == 4) {
System.out.println("Empat");
} else if (angka == 5) {
System.out.println("Lima");
} else if (angka == 6) {
System.out.println("Enam");
} else if (angka == 7) {
System.out.println("Tujuh");
} else if (angka == 8) {
System.out.println("Delapan");
} else if (angka == 9) {
System.out.println("Sembilan");
} else if (angka == 10) {
System.out.println("Sepuluh");
} else {
System.out.println("Input Salah");
}

}
}
Jawaban Soal B
import java.util.Scanner;
public class LetakKuadran {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Input X : ");
int X = input.nextInt();
System.out.println("X : " + X);

13
System.out.println();
System.out.print("Input Y : ");
int Y = input.nextInt();
System.out.println("Y : " + Y);
System.out.println();
System.out.println("Titiknya: (" + X + "," + Y +
")");
System.out.println();

if (X > 0 && Y > 0) {


System.out.println("Kuadran I");
} else if (X < 0 && Y > 0) {
System.out.println("Kuadran II");
} else if (X < 0 && Y < 0) {
System.out.println("Kuadran III");
} else if (X > 0 && Y < 0) {
System.out.println("Kuadran IV");
} else {
System.out.println("tidak Terletak pada kuadran
manapun");
}

}
}
Jawaban Soal A
import java.util.Scanner;
public class HitungGajih {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double gaji, tgol, tanak;
int gol, jum_anak;

System.out.print("Masukkan Golongan : ");


gol = input.nextInt();

if (gol == 1) {
gaji = 1000000;
tgol = 100000;
System.out.println("Gaji : " + gaji);
System.out.println("Tunjangan : " + tgol);

14
System.out.println("=========================");
} else if (gol == 2) {
gaji = 1500000;
tgol = 125000;
System.out.println("Gaji : " + gaji);
System.out.println("Tunjangan : " + tgol);
System.out.println("=========================");
} else if (gol == 3) {
gaji = 2000000;
tgol = 150000;
System.out.println("Gaji : " + gaji);
System.out.println("Tunjangan : " + tgol);
System.out.println("=========================");
} else if (gol == 4) {
gaji = 2500000;
tgol = 175000;
System.out.print("Jumlah Anak : ");
jum_anak = input.nextInt();
tanak = tgol * jum_anak;

System.out.println("Gaji : " + gaji);


System.out.println("Tunjangan : " + tanak);
System.out.println("=========================");

} else if (gol == 5) {
gaji = 3000000;
tgol = 200000;
System.out.print("Jumlah Anak : ");
jum_anak = input.nextInt();
tanak = tgol * jum_anak;

System.out.println("Gaji : " + gaji);


System.out.println("Tunjangan : " + tanak);
System.out.println("=========================");

} else {
System.out.println("Input Salah");
}

15
PERHATIAN :
JADIKAN CONTOH FILE INI SEBAGAI TEMPLATE.
SIMPAN FILE WORD DENGAN EKSTENSI (docx).
SIMPAN FILE WORD DENGAN MENGIKUTI FORMAT BERIKUT INI
KODEKELAS <space> NIM <space> Nama Lengkap
CONTOH :
LP1-3 10506357 Bella Hardiyana.docx
2LP1-1 10509999 Cinta Nagara.docx
JIKA ADA YANG INGIN DITANYAKAN SILAHKAN SAJA LEWAT TELPON. THX

16

Anda mungkin juga menyukai