modul daspro2- (135623014- herlina nur indah trivinta).docx
DESCRIPTION
Tugas Dasaev PemrogramanTRANSCRIPT
LAPORAN PRAKTIKUM DASAR PEMROGRAMAN
Di susun oleh:
Herlina Nur Indah Trivinta
135623014
A. Dasar Teori
1. Netbeans dan Eclipse
- Netbeans
Netbeans merupakan sebuah aplikasi Integrated Development Environment (IDE)
yang berbasiskan Java dari Sun Microsystems yang berjalan di atas swing. Swing
merupakan sebuah teknologi Java untuk pengembangan aplikasi desktop yang dapat
berjalan pada berbagai macam platform seperti windows, linux, Mac OS X dan Solaris.
Sebuah IDE merupakan lingkup pemrograman yang di integrasikan ke dalam suatu
aplikasi perangkat lunak yang menyediakan Graphic User Interface (GUI), suatu kode
editor atau text, suatu compiler dan suatu debugger.
Netbeans juga digunakan oleh sang programmer untuk menulis, meng-compile,
mencari kesalahan dan menyebarkan program netbeans yang ditulis dalam bahasa
pemrograman java namun selain itu dapat juga mendukung bahasa pemrograman lainnya
dan program ini pun bebas untuk digunakan dan untuk membuat professional desktop,
enterprise, web, and mobile applications dengan Java language, C/C++, dan bahkan
dynamic languages seperti PHP, JavaScript, Groovy, dan Ruby.
Fitur-fitur dari Platform Netbeans antara lain:
o Manajemen antarmuka (misal: menu & toolbar)
o Manajemen pengaturan pengguna
o Manajemen penyimpanan (menyimpan dan membuka berbagai macam
data)
o Manajemen jendela
o Wizard framework (mendukung dialog langkah demi langkah)
Netbeans IDE merupakan sebuah IDE open source yang ditulis sepenuhnya dengan
bahasa pemrograman java menggunakan platform netbeans. NetBeans IDE mendukung
pengembangan semua tipe aplikasi Java (J2SE, web, EJB, dan aplikasi mobile). Fitur
lainnya adalah sistem proyek berbasis Ant, kontrol versi, dan refactoring.
Versi terbaru saat ini adalah NetBeans IDE 5.5.1 yang dirilis Mei 2007
mengembangkan fitur-fitur Java EE yang sudah ada (termasuk Java Persistence support,
EJB-3 dan JAX-WS). Sementara paket tambahannya, NetBeans Enterprise Pack
mendukung pengembangan aplikasi perusahaan Java EE 5, meliputi alat desain visual
SOA, skema XML, web service dan pemodelan UML. NetBeans C/C++ Pack
mendukung proyek C/C++.
Modularitas: Semua fungsi IDE disediakan oleh modul-modul. Tiap modul
menyediakan fungsi yang didefinisikan dengan baik, seperti dukungan untuk bahasa
pemrograman Java, editing, atau dukungan bagi CVS. NetBeans memuat semua modul
yang diperlukan dalam pengembangan Java dalam sekali download, memungkinkan
pengguna untuk mulai bekerja sesegera mungkin. Modul-modul juga mengijinkan
NetBeans untuk bisa dikembangkan. Fitur-fitur baru, seperti dukungan untuk bahasa
pemrograman lain, dapat ditambahkan dengan menginstal modul tambahan. Sebagai
contoh, Sun Studio, Sun Java Studio Enterprise, dan Sun Java Studio Creator dari Sun
Microsystem semuanya berbasis NetBeans IDE.
Fitur fitur yang terdapat dalam netbeans antara lain:
a. Smart Code Completion: untuk mengusulkan nama variabel dari suatu tipe,
melengkapi keyword dan mengusulkan tipe parameter dari sebuah method.
b. Bookmarking: fitur yang digunakan untuk menandai baris yang suatu saat hendak
kita modifikasi.
c. Go to commands: fitur yang digunakan untuk jump ke deklarasi variabel, source
code atau file yang ada pada project yang sama.
d. Code generator: jika kita menggunakan fitur ini kita dapat meng-generate
constructor, setter and getter method dan yang lainnya.
e. Error stripe: fitur yang akan menandai baris yang eror dengan memberi highlight
merah.
Database yang didukung oleh Netbeans antara lain:
a. JDBC merupakan spesifikasi standar dari JavaSoft API (Aplication
Programming Interface) yang memungkinkan program Java untuk mengakses
sistem database manajemen. JDBC API terdiri dari satu set interface dan kelas
yang ditulis dalam bahasa pemrograman Java. JDBC API Menggunakan
interface standar dan kelas, programmer dapat menulis aplikasi yang terhubung
ke database, mengirimkan pertanyaan ditulis SQL (Structured Query
Language), dan memproses hasilnya.
b. ORACLE merupakan sebuah aplikasi basisdata yang didukung oleh NetBeans,
Oracle secara umum hampir sama dengan MySQL namun yang membedakan
adalah oracle dapat digunakan dan dihubungkan dengan netbeans dan harus
menggunakan drivers untuk menyimpan data-data yang telah dibuat. Oracle
merupakan salah satu dari beberapa aplikasi basisdata yang sering digunakan
untuk koneksi ke basisdata pada NetBeans karena relatif mudah dan cepat.
c. MySQL merupakan sebuah aplikasi basisdata yang didukung oleh NetBeans,
MySQL memilki Fitur Yang ada sudah lumayan lengkap, dari input, update,
delete serta Search. Sebuah antarmuka ODBC memanggil MyODBC yang
memungkinkan setiap bahasa pemrograman yang mendukung ODBC untuk
berkomunikasi dengan basis data MySQL. Kebanyakan kode sumber MySQL
dalam ANSI C.
d. DataBase Access (Microsoft Access) merupakan sebuah aplikasi basis data
yang didukung oleh NetBeans, data dapat disimpan di dalam format Microsoft
Access, Microsoft Jet Database Engine, Microsoft SQL Server, Oracle
Database, atau semua kontainer basis data yang mendukung standar ODBC.
Access juga mendukung teknik-teknik pemrograman berorientasi objek.
- Eclipse
Eclipse adalah sebuah IDE (Integrated Development Environment) untuk
mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-
independent). Berikut ini adalah sifat dari Eclipse:
Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris,
AIX, HP-UX dan Mac OS X.
Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi
Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti
C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.
Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan
untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test
perangkat lunak, pengembangan web, dan lain sebagainya.
Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open
source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini.
Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk
dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
2. Penulisan program di Java input output
pertama kali mestinya cara menulis kata, yang biasanya dalam bahasa pemrograman
disebut pemrograman “Hello word”.
01 /*
02 * To change this template, choose Tools | Templates
03 * and open the template in the editor.
04 */
05
06 /**
07 *
08 * @author Ecko Zulkaryanto
09 */
10 public class Hello {
11
12 /**
13 * @param args the command line arguments
14 */
15 public static void main(String[] args) {
16 // TODO code application logic here
17 System.out.print(”\n\t\tThis is Java Programming Language\n”);
18 System.out.println(”\t\t Welcome to Java Programming”);
19 }
20
21 }
Klo udah pernah belajar C/C++ biasanya langsung ngerti koding di atas. Bagi yg baru di
java, install JDK dulu, baru bisa compile and jalanin/running koding ini. setelah install
and bikin path-nya, compile program ini di console atau command prompt (ketik start
menu>run>ketik “cmd”>enter). lalu masuk ke direktori file koding di atas yang udah
dikasih nama “Hello.java”. untuk compile ketik perintah “javac Hello.java” dan untuk
running ketik perintah “java Hello”. Lebih gampang pake compiler , ex: “netbeans”, bisa
juga peke eclipse, atau yang lebih gampang pake jcreator.
Java – Pemrograman dengan Array
int B[] = {10, 5, 14, 20, 35, 27, 50, 75}; artinya B adalah sebuah integer array yang berisi
nilai-nilai didalam {}. B.length = artinya banyaknya data pada array B[], nila pertama
array B[] adalah B[0] dan selanjutnya. Program berikut beriisi looping dengan for untuk
menghitung jumlah angka dalam variabel array B[].
public class Program5 {
public static void main(String[] arg) {
int B[] = {10, 5, 14, 20, 35, 27, 50, 75};
int jumlah = 0;
for (int n=0; n 0; x–) {
hasil *= x;
}
System.out.println(faktorial + “!=” + hasil);
}
}
Save dengan nama Program4. Jika saat dijalankan diisi 25 pada bilangan, maka pada
General Output terdapat tulisan berikut:
25!=2076180480
Process completed.
Selamat mencoba!
Dalam pemrograman Java, perintah import digunakan untuk mendefinisikan package
yang akan dipakai dalam program. Hal ini digunakan untuk mempersingkat perintah
dalam program. Dalam program berikut, ditulis import javax.swing.*, sehingga package
ini tidak usah ditulis didalam program. Import ditulis diawal program sebulum class.
//Singkatan package
import javax.swing.*;
public class Program10 {
public static void main(String[] arg) {
String in = JOptionPane.showInputDialog(“Bilangan 1-12″);
int bil = Integer.parseInt(in);
String bulan = “”;
String B[] = {“Januari”, “Februari”, “Maret”, “April”, “Mei”, “Juni”, “Juli”, “Agustus”,
“September”, “Oktober”, “Nopember”, “Desember”};
System.out.println(“Bulan ke ” + bil + “=” + B[bil-1]);
}
}
Contoh output:
Bulan ke 3=Meret
Process completed.
Java – Pemrograman dengan JOptionPane dan If
Berikut salah satu contoh pemrograman Java dengan menggunakan
JOptionPane.showInputDialog untuk menampilkan kotak dialog isian untuk umur. Jika
umur yang diisikan adalah 20 atau lebih, maka akan ditampilkan tulisan Dewasa, jika
tidak ditampikan Anak-anak.
Nilai Isi Umur yang diketik, akan dimasukkan ke sebuah variable string bernama
dataUser. Sebelum diolah, dataUser diubah menjadi integer dengan perintah, umur =
Integer.parseInt(dataUser);. Baru setelah itu nilai umur bisa dicek dengan if, untuk
menentukan apakah Dewasa atau Anak-anak.
Silahkan diketik program berikut:
public class Program2 {
public static void main(String[] arg) {
int umur ;
String dataUser = javax.swing.JOptionPane.showInputDialog(“Isi umur”);
umur = Integer.parseInt(dataUser);
if (umur >=20)
System.out.println(“Dewasa”);
else
System.out.println(“Anak-anak”);
}
}
Simpan proram ini dengan nama Program2, lalu jalankan.
java perhitungan angka
Pemrograman Java adalah sebuah pemrograman yang tersetruktur berbasis objek (OOP)
yang menekankan aspek disiplin dalam penulisan program. Dalam pemrograman Java,
besar kecilnya tulisan dapat berpengaruh terhadap jalannya program tersebut. Untuk
menulis program Java, bisa menggunakan teks editor seperti notepad engan
ekstension .java, namun akan lebih mudah menggunakan program khusus misalnya
JCreator atau Netbeans.
Dalam program Java, nama class harus sama dengan nama file saat menyimpan
programnya. Dalam contoh berikut dibuat sebuah class Program1, maka saat save program
harus diberi nama Program1 juga.
Salah satu contoh sederhana program perkalian dengan java, seperti berikut:
public class Program1 {
public static void main(String[] arg) {
int a = 5 ; //inisialisasi variable a
int b = 10 ; /* inisialisasi variable b */
int c = a+b ;
System.out.println (a + “+” + b + “=” + c );
}
}
Setelah selesai diketik, simpan dengan nama Program1. Lakukan Build-Build File untuk
memeriksa apakah ada kesalahan penulisan atau tidak. Jika tidak ada program bisa
dijalankan dengan perintah Run – Run Project (F5). Program ini akan menghasilkan
output berikut:
5+10=15
Mengurutkan (sorting) objek menggunakan interface Comparable dan Comparator
Posted in Fundamental, Intermediate by jolly on the January 15th, 2010
Sorting(pengurutan) akan sering dijumpai dalam pembuatan program. Lebih lagi dalam
sistem informasi yang menyajikan tabel-tabel yang berisi daftar tertentu yang menjadi
hasil pemrosesan data. Misalnya saat anda membuat sistem informasi manajemen
penjualan, anda mungkin saja akan diminta untuk membuat daftar nama produk yang
diurutkan berdasarkan nama produk atau daftar permintaan produk yang diurutkan
berdasarkan jumlah rupiah yang akan didapat dari permintaan tersebut.
Sorting dalam bahasa pemrograman java sangatlah mudah terutama untuk data dengan
tipe-data primitif (mis: int, String), karena fungsinya(method-nya) sudah tersedia. Data
tersebut disimpan dalam collection (mis: list, array) Berikut ini sorting data dengan tipe-
data primitif.
Nama file: SortingPrimitiveData.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class SortingPrimitiveData {
10. public static void main(String[] args) {
11. List integers = new ArrayList();
12. integers.add(98);
13. integers.add(56);
14. integers.add(107);
15. integers.add(219);
16. integers.add(45);
17. Collections.sort(integers);
18. for (Integer integer : integers) {
19. System.out.println(integer);
20. }
21. }
22. }
23.
Sorting data dengan tipe-data referensial (Sorting objek)
Data daftar table biasanya disimpan dalam sebuah list. List tersebut berisi objek-objek
yang nantinya akan membentuk baris tabel. 1 Objek 1 baris tabel. Sedangkan Kolom-
kolom tabel tersebut merupakan field (property) dari sebuah objek. Kemudian anda
diminta untuk melakukan pengurutan isi tabel tersebut berdasarkan salah satu kolom
(property). Bagaimana anda akan melakukannya?
Berikut ini salah satu cara (dengan contoh sederhana) yang dapat digunakan.
Dari kelas berikut ini nantinya akan dibuat objek-objek yang dimasukkan dalam list.
Nama file: TeamScore.java
1.
2. /**
3. *
4. * @author JSL
5. */
6. public class TeamScore implements Comparable {
7. private String teamName;
8. private int score;
9. public int getScore() {
10. return score;
11. }
12. public void setScore(int score) {
13. this.score = score;
14. }
15. public String getTeamName() {
16. return teamName;
17. }
18. public void setTeamName(String teamName) {
19. this.teamName = teamName;
20. }
21. public int compareTo(Object o) {
22. /**
23. * Sort by score ascending
24. */
25. return this.score – ((TeamScore) o).score;
26. /**
27. * Sort by score descending
28. */
29. //return ((TeamScore) o).score – this.score;
30. }
31. }
32.
Terlihat bahwa kelas TeamScore meng-implements interface Comparable dan dibuatkan
implementasi dari fungsi compareTo().
Berikutnya adalah bagaimana kelas ini digunakan dalam sorting, berikut potongan
kodenya.
Nama file: ObjectSorting.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class ObjectSorting {
10. public static void main(String[] args) {
11. List teamScores = new ArrayList();
12. /**
13. * Create new team
14. */
15. TeamScore t1 = new TeamScore();
16. TeamScore t2 = new TeamScore();
17. TeamScore t3 = new TeamScore();
18. TeamScore t4 = new TeamScore();
19. /**
20. * Set Team
21. */
22. t1.setScore(28);
23. t1.setTeamName(“Arsenal”);
24. t2.setScore(25);
25. t2.setTeamName(“MU”);
26. t3.setScore(22);
27. t3.setTeamName(“Chealsea”);
28. t4.setScore(25);
29. t4.setTeamName(“Liverpool”);
30. /**
31. * Add to list
32. */
33. teamScores.add(t1);
34. teamScores.add(t2);
35. teamScores.add(t3);
36. teamScores.add(t4);
37. /**
38. * Sort it
39. */
40. Collections.sort(teamScores);
41. for (TeamScore teamScore : teamScores) {
42. System.out.println(teamScore.getTeamName() + ” get ” + teamScore.getScore() + ”
points.”);
43. }
44. }
45. }
46.
Output:
1.
2. run:
3. Chealsea get 22 points.
4. MU get 25 points.
5. Liverpool get 25 points.
6. Arsenal get 28 points.
7. BUILD SUCCESSFUL (total time: 0 seconds)
Perlu diperhatikan bahwa proses sorting diatas adalah berdasarkan score. Terlihat pada
fungsi compareTo() yang dibandingkan adalah score-nya.
1.
2. return this.score – ((TeamScore) o).score;
Sekarang, bagaimana jika objek tersebut akan diurutkan berdasarkan teamName? Seperti
pada sorting data tipe-data primitif diperlukan class yang mengimplementasi interface
Comparator. Berikut potongan kodenya.
Nama file: SortByTeamName.java
1.
2. import java.util.Comparator;
3. /**
4. *
5. * @author JSL
6. */
7. public class SortByTeamName implements Comparator {
8. public int compare(TeamScore t1, TeamScore t2) {
9. /*
10. * Sort ascending
11. */
12. return t1.getTeamName().compareTo(t2.getTeamName());
13. /*
14. * Sort descending
15. */
16. //return t2.getTeamName().compareTo(t1.getTeamName());
17. }
18. }
19.
Kemudian tambahkan parameter pada fungsi Collections.sort() pada kelas ObjectSorting.
Nama file: ObjectSorting.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class ObjectSorting {
10. public static void main(String[] args) {
11. List teamScores = new ArrayList();
12. /**
13. * Create new team
14. */
15. TeamScore t1 = new TeamScore();
16. TeamScore t2 = new TeamScore();
17. TeamScore t3 = new TeamScore();
18. TeamScore t4 = new TeamScore();
19. /**
20. * Set Team
21. */
22. t1.setScore(28);
23. t1.setTeamName(“Arsenal”);
24. t2.setScore(25);
25. t2.setTeamName(“MU”);
26. t3.setScore(22);
27. t3.setTeamName(“Chealsea”);
28. t4.setScore(25);
29. t4.setTeamName(“Liverpool”);
30. /**
31. * Add to list
32. */
33. teamScores.add(t1);
34. teamScores.add(t2);
35. teamScores.add(t3);
36. teamScores.add(t4);
37. /**
38. * Sort it
39. */
40. Collections.sort(teamScores, new SortByTeamName());
41. for (TeamScore teamScore : teamScores) {
42. System.out.println(teamScore.getTeamName() + ” get ” + teamScore.getScore() + ”
points.”);
43. }
44. }
45. }
46.
Output:
1.
2. run:
3. Arsenal get 28 points.
4. Chealsea get 22 points.
5. Liverpool get 25 points.
6. MU get 25 points.
7. BUILD SUCCESSFUL (total time: 0 seconds)
Operator: Assigment, Matematika, Perbandingan, Logika
o Operator Assignment
Operator assignment digunakan untuk melakukan pemberian nilai terhadap suatu
variabel sehingga operator ini juga sering dikenal dengan operator penugasan. Dalam
bahasa Pascal operator yang digunakan untuk melakukan hal ini adalah operator :=.
Berikut ini bentuk umum untuk melakukan pemberian nilai terhadap suatu variabel.
NamaVariabel := nilai_yang_akan_dimasukkan;
Contoh:
Var
x: integer;
y: real;
str: string;
Begin
x := 123;
y := 56.04;
str := ‘Mencoba memasukkan nilai ke dalam variabel’;
3. Operator : Assigment, Matematika, Perbandingan, Logika
o Operator Matematika
Bahasa Pascal menyediakan beberapa operator yang dapat digunakan dalam operasi aritmatika,
seperti penjumlahan, pengurangan, perkalian, pembagian dan penentuan sisa bagi.
Operator Jenis Operasi Tipe Operand Tipe Hasil Contoh
+ Penjumlahan Integer, real Integer, real a + b
- Pengurangan Integer, real Integer, real x – 1
* Perkalian Integer, real Integer, real a * b
/Pembagian untuk
bilangan riilInteger, real real 5 / 3
divPembagian untuk
bilangan bulatInteger Integer 10 div 4
mod Sisa bagi integer integer 10 od 3
o Operator Perbandingan
Operator perbandingan berguna untuk membandingkan dua nilai atau lebih, atau bisa juga
digunakan untuk membandingkan nilai antar variabel, dimana hasil perbandingan tersebut akan
menghasilkan nilai true atau false. Nilai variabel atau nilai yang dibandingkan pada kondisi if
atau statement condition ini disebut dengan operand. Supaya lebih jelas saya akan memberikan
contoh.
<?php
$a = 10;
$b = 5;
if ($a > $b)
{
……
}
?>
coba kamu perhatikan script php diatas pada bagian (if $a > $b). Yang dimaksud dengan operand
adalah $a dan $b. Kedua variabel tersebut disebut operand karena kedua variabel tersebut
digunakan untuk melakukan perbandingan. Perintah if tersebut dapat dibaca apakah variabel $a
lebih besar dari variabel $b ?. Jika iya maka jalankan perintah dibawah perintah if. Nach gimana
udah jelas kan mengenai apa yang dimaksud dengan operand.
Berikutnya saya akan menjelaskan operator apa saja yang dapat digunakan untuk melakukan
perbandingan pada perintah if di php. Sebenarnya operator perbandingan ini tidak saja dapat
digunakan untuk melakukan perbandingan pada perintah if di php. Operator perbandingan ini
juga dapat digunakan pada perintah perulangan pada php. Namun untuk lebih mudahnya kita
pelajari dulu penerapan operator ini pada perintah if di php.
Berikut ini merupakan operator perbandingan yang dapat digunakan di php
Simbol Keterangan
== :
disebut juga sebagai operator Equality. Perbandingan menggunakan
operator ini akan mengembalikan nilai true jika kedua operand
memiliki nilai sama, apabila tidak maka akan mengembalikan nilai
false.
!= :
disebut juga sebagai operator Inequality. Perbandingan
menggunakan operator ini akan mengembalikan nilai true jika
kedua operand memiliki nilai berbeda, apabila tidak maka akan
mengembalikan nilai false.
=== :
disebut juga sebagai operator Identical. Operator ini digunakan
untuk membandingkan apakah kedua operand identik. Yang
dimaksud dengan identik disini adalah kedua operand memiliki
nilai dan tipe data yang sama.
!== :
disebut juga sebagai operator Not Identical. Operator ini digunakan
untuk membandingkan apakah kedua operand tersebut tidak
identik. Yang dimaksud dengan tidak identik adalah kedua operand
memiliki nilai dan tipe data yang berbeda.
> :
Operator ini digunakan untuk membandingkan apakah operand
yang berada disebelah kiri memiliki nilai lebih besar daripada
operand yang disebelah kanan.
>= :
Operator ini digunakan untuk membandingkan apakah operand
yang berada disebelah kiri memiliki nilai lebih besar sama atau
sama dengan operand yang disebelah kanan.
< :
Operator ini digunakan untuk membandingkan apakah operand
yang berada disebelah kiri memiliki nilai lebih kecil daripada
operand yang disebelah kanan.
<= : Operator ini digunakan untuk membandingkan apakah operand
yang berada disebelah kiri memiliki nilai lebih besar atau sama
dengan operand yang disebelah kanan.
o Operator Logika
Operator logika itu adalah operator yang digunakan untuk membandingkan dua nilai boolean.
Biasanya digunakan untuk menggabungkan hasil dari operator pembanding.
Ada dua operator di operator logika :
and (&&) dan
or (||)
Berikut adalah hasil dari operasi logika && :
true && true = true
true && false = false
false && true = false
false && false = false
dan ini adalah hasil dari operator logika || :
true || true = true
true || false = true
false || true = true
false || false = false
Jadi dalam operator logika && hanya akan menghasilkan true jika kedua nilai true dan operator
logika || akan menghasilkan false jika kedua nilai false (kebalikannya).
/**
* Copyright (c) 2012 @khannedy and/or its affiliates. All rights reserved.
* @khannedy PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package khannedy.pakarjava.javadasar;
/**
*
* @author Eko Kurniawan Khannedy
*/
public class OperatorLogika {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
boolean hasil;
hasil = true && true;
System.out.println(hasil);
hasil = true && false;
System.out.println(hasil);
hasil = false && true;
System.out.println(hasil);
hasil = false && false;
System.out.println(hasil);
hasil = true || true;
System.out.println(hasil);
hasil = true || false;
System.out.println(hasil);
hasil = false || true;
System.out.println(hasil);
hasil = false || false;
System.out.println(hasil);
}
}
4. Tingkatan Operator
Tabel pada halaman berikut akan memperlihatkan kedudukan dari setiap operator
terhadap operator lainnya, dan bagaimana arah pengeksekusian dari suatu pernyataan yang
mengandung operator tersebut
Operator Evaluasi
( ) [ ] . kiri ke kanan
! ~ ++ -- + - * & (type) sizeof kanan ke kiri
* / % kiri ke kanan
+ - kiri ke kanan
<< >> kiri ke kanan
< <= > >= kiri ke kanan
== != kiri ke kanan
& kiri ke kanan
^ kiri ke kanan
| kiri ke kanan
&& kiri ke kanan
|| kiri ke kanan
? : kanan ke kiri
= += -= *= /= %= &= ^= |= <<= >>= kanan ke kiri
, kiri ke kanan
Sebagai contoh, operator binary + dan - mempunyai kedudukan yang lebih tinggi dibandingkan
dengan operator !=, dan operator & mempunyai kedudukan yang lebih tinggi dibandingkan
dengan operator &&.
Catatan :
Operator unary +, -, dan * mempunyai kedudukan yang lebih tinggi dibandingkan dengan
bentuk binary-nya.
Kedudukan operator bitwise &, ^, dan | lebih rendah dibandingkan dengan operator ==
dan !=. Dengan demikian, pernyataan seperti :
if ( (x & MASK) == 0 ) ......
harus menggunakan tanda kurung seperti pada bentuk di atas agar memperoleh hasil yang
diinginkan.
5. Percabangan (if, if....else, if...elseif...., switch)
Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika kondisi yang
menjadi syarat terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka sebaliknya.
Dalam java terdapat 4 macam jenis percabangan, if, if-else, else-if, dan juga switch.
Keempat jenis ini memiliki penggunaan masing-masing. Berikut penjelasan mengenai
penggunaan tiap-tiap percabangan :
if : Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang
akan dijalankan dengan syarat tertentu. Sintaks if seperti berikut :
if(kondisi){
pernyataan
}
Jika kondisi benar, maka pernyataan akan dijalankan.
Contoh :
public class coba{
public static void main (String [] args){
int a=0;
if (a==0)
System.out.println("Nilai a = 0");
if (a==1)
System.out.println("Nilai a = 1");
}
}
Output : Program akan menampilkan nilai a = 0 saja, karena pada if yang kedua, kondisi
tidak memenuhi atau salah.
if else : Percabangan if else digunakan saat kita memiliki dua pernyataan dengan
syarat tertentu. Sintaks if-else seperti berikut :
if(kondisi){
pernyataan1
}else{
pernyataan2
}
Jika hasil dari if benar, maka pernyataan1 yang dijalankan, sedangkan jika salah,
pernyataan dua yang akan dijalankan.
Contoh :
public class coba{
public static void main (String [] args){
int a=0;
if (a==0)
System.out.println("Nilai a = 0");
else
System.out.println("Nilai a = 1");
}
}
Output : program akan menampilkan nilai a = 0, karena kondisi if bernilai benar, jika
pada inisialisasi nilai a tidak bernilai 0, maka program akan menampilkan nilai a = 1.
else -if : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih
dari 2) dan banyak pernyataan (lebih dari 2). Sintaks dari else-if seperti berikut :
if(kondisi){
pernyataan1
}elseif(kondisi2){
pernyataan2
}else(kondisi3){
pernyataan3
}
else {
penyataan4
}
jika kondisi1 benar, maka pernyataan1 akan dijalankan, jika kondisi2 benar, maka
penyataan2 akan dijalankan, jika semua kondisi salah, maka penyataan4 yang akan
dijalankan saja.
Contoh :
public class coba{
public static void main (String [] args){
int a=2;
if (a==0)
System.out.println("Nilai a = 0");
else if(a==1)
System.out.println("Nilai a = 1");
else if(a==2)
System.out.println("Nilai a = 2");
}
}
Output : Program akan menampilkan nilai a = 2 saja, karena pada else-if yang ketiga
atau dengan pernyataan a==2 bernilai benar, sedangkan pernyataan yang lain tidak
dijalankan karena kondisi tidak memenuhi.
switch-case : percabangan yang digunakan saat kita memiliki banyak kondisi
(lebih dari 2) dan banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir
sama dengan else if, hanya saja sintaksnya yang berbeda. Sintaks dari switch-case seperti
berikut :
switch (variabel) {
case nilai1: pernyataan1;
break;
case nilai2: pernyataan2;
break;
default: pernyataan3;
}
Jika nilai variabel yang ditunjuk bernilai sesuai nilai1, maka pernyataan1 akan
dijalankan, jika nilai variabel yang ditunjuk bernilai sesuai nilai2, pernyataan2 dijalankan,
jika tidak ,maka pernyataan3 yang akan dijalankan.
public class coba{
public static void main (String [] args){
int a=3;
switch (a) {
case 1:
System.out.println("Nilai a=1");break;
case 2:
System.out.println("Nilai a=2"); break;
case 3:
System.out.println("Nilai a=3");break;
default:
System.out.println("Nilai a=4"); break
}
}
}
Output : Program akan menampilkan nilai a = 2 saja, karena kondisi bernilai benar,
perhatika break dibelakang pernyataan, jika break ini dihapus, maka semua pernyataan akan
dijalankan. Break digunakan untuk keluar dari switch-case saat 1 pernyataan sudah
dijalankan.
B. PRAKTIKUM DASAR PEMROGRAMAN
1. Tuliskan algoritma untuk mencari sisi miring dari suatu segitiga siku-siku jika diketahui
diketahui panjang dua sisi yang membentuk sudut siku-siku.
Petunjuk: sisi miring segitiga siku-siku dapat dihitung dengan rumus pythagoras,
c=√a2+b2
2. Tuliskan algoritma untuk menampilkan banyaknya pecahan uang paling efisien dari sejumlah
uang yang di inputkan oleh pengguna.
Pecahan uang yang digunakan: 100.000, 50.000, 20.000, 10.000, 5.000, 2.000, 1.000, 500,
200, dan 100.
Contoh, untuk uang Rp 12.500, diperlukan 1 lembar 10.000, 1 lembar 2.000, dan 1 koin 500.
Input : jumlah uang
Output : banyaknya pecahan uang
3. Buat algoritma untuk mengkonversi bilangan dalam format desimal menjadi biner.
Input : bilangan desimal
Output : bilangan biner
Ilustrasi:
4. Untuk menentukan bonus pegawai, berdasarkan ketentuan yang diberikan oleh bagian
personalia dan keuangan sebagai berikut : Pegawai perusahaan digolongkan menjadi dua
golongan, yaitu staf dan non staf. Staf akan mendapatkan bonus sebesar 1 juta rupiah dengan
syarat bahwa ia telah bekerja paling tidak 5 tahun dan umurnya sudah mencapai 50 tahun;
staf yang bekerja kurang dari 5 tahun dan berapapun umurnya, hanya mendapat bonus
sebesar Rp. 500.000. Pegawai non staf yang telah bekerja lebih dari 5 tahun akan mendapat
bonus sebesar Rp. 400.000 jika berumur lebih dari 50 tahun sedangkan pegawai non staf
yang berumur kurang dari 50 tahun hanya mendapat bonus Rp. 250.000. Pegawai staf yang
umurnya kurang dari 50 tahun akan mendapat bonus Rp. 300.000.
Buat algoritmanya?
5. Tarif pemasangan iklan baris di sebuah Surat Kabar ditentukan sebagai berikut :
- Hari : Minggu, Senin, Selasa, Rabu, Kamis dan Jumat, per baris Rp. 33.000,-
- Hari : Sabtu, per baris Rp. 40.000,-
Buatlah algoritma untuk menghitung total biaya iklan baris yang harus dibayar oleh
pengiklan.
Input : - Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu)
- Jumlah baris yang dipakai
Output : Total biaya iklan yang harus dibayar pengiklan
Tuliskan algoritma untuk kasus diatas dalam bentuk flowchart.
6. Info Harga Tiket Masuk bioskop Surabaya City adalah sebagai berikut :
- Senin – Kamis : Rp 15.000,-
- Jumat s/d Minggu : Rp 35.000,-
- Hari Libur : Rp 35.000,-
Input : - Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu)
- Libur atau Tidak Libur
- Jumlah tiket yang dibeli
Output : Total biaya tiket
Pertanyaan: Buat algoritma untuk menghitung total biaya tiket .
7. Di sebuah perbelanjaan di Surabaya diadakan Pekan Diskon, dimana perhitungan bonus
dihitung bertingkat untuk total belanja senilai :
- Rp. 150.000,- diskonnya : 10%
- Rp. 275.000,- diskonnya : 15%
- Rp. 300.000,- diskonnya : 20%
- Rp. 400.000,- ke atas diskonnya : 25%
Diskon tidak dihitung sebagai akumulasi dari diskon nilai belanja dibawahnya.
Buatlah algoritma untuk menghitung berapa nilai yang harus dibayar oleh pelanggan dengan
total nilai belanja tertentu bila disertakan pula perhitungan diskonnya.
Input : Total nilai belanja.
Output : Nilai Diskon (dalam rupiah/bukan persen), Nilai yang harus dibayar
8. Berikut ini adalah ketentuan untuk menghitung nilai, dan konversi menjadi nilai huruf.
Ketentuannya:
Nilai=((rata-rata tugas*30%)+(UTC*30%)+(UAC*40%))
Input = tugas1,tugas2,tugas3,UTC,UAC
Output = Nilai Akhir dan Nilai Huruf.
‘A’ jika nilai > 80 dan nilai <= 100
‘AB’ jika nilai > 70 dan nilai <= 80
‘B’ jika nilai > 65 dan nilai <= 70
‘BC’ jika nilai > 60 dan nilai <= 65
‘C’ jika nilai > 55 dan nilai <= 60
’D’ jika nilai > 40 dan nilai <= 55
’E’ jika nilai > 0 dan nilai <= 40
9. Berikut ini adalah tarif pemakaian Air PDAM Kota Surabaya
Jumlah Pemakaian (m3) Harga/m3
Pemakaian I ( < 50 m3) Rp. 200,-
Pemakaian II ( 51 – 150 ) Rp. 500,-
Pemakaian III ( 151 – 300 ) Rp. 1.000,-
Pemakaian I V( > 300 m3 ) Rp.1.500,-
Input : Jumlah Pemakaian
Output : Besar biaya yang harus dibayar
Jumlah Pemakaian = 500 m3
Pemakaian I ( s/d 50 m3) Rp. 200,- * 50 = Rp. 10.000,-
Pemakaian II ( 51 – 150 ) Rp. 500,- * 100 = Rp. 50.000,-
Pemakaian III ( 151 – 300 ) Rp. 1.000,- * 150 = Rp. 150.000,-
Pemakaian IV( > 300 m3 ) Rp.1.500,- * 200 = Rp. 300.000,-
Biaya Total Rp. 510.000,-
Pertanyaan: Buat algoritma untuk kasus diatas.
10. Sebuah perusahaan kartu kredit memberikan cash back kepada nasabahnya berdasarkan
jumlah nilai pemakaian kartu kredit selama sebulan.
Nilai pemakaian cash back
--------------------- ----------
s.d 1.000.000 5%
1.000.000 – 10.000.000 6%
10.000.000 – 25.000.000 7%
Diatas 25.000.000 8%
Ilustrasi: seorang nasabah yang total pemakaian selama sebulan 18.000.000, maka cash
backnya= 5%x1.000.000+6%x9.000.000+7%x8.000.000 = 160.000
Buat algoritma untuk menghitung cash back yang diterima nasabah berdasarkan nilai
pemakaian kartu kredit.
C. Flowchart dan Pseudocode
1. Algoritma:
a. Tentukan nilai a, b
b. Hitung C = √a2+b2
c. Tampilkan C
Psuodocode
a. Input (a,b)
b. C √a2+b2
c. Output (c)
Flowchart
2. Algoritma
a. Tentukan uang
b. Hitung p100r = uang/100000
Hitung sp100r = uang – p100r*100000
Hitung p50r = sp100r/50000
Hitung sp50r = sp100r – p50r*50000
Hitung p20r = sp50r/20000
Hitung sp20r = sp50r – p20r*20000
Hitung p10r = sp20r/10000
Hitung sp10r = sp20r – p10r*10000
Hitung p5r = sp10r/5000
Hitung sp5r = sp10r – p5r*5000
Hitung p1r = sp5r/1000
Hitung sp1r = sp5r – p1r*1000
Hitung p0,5r = sp1r/500
Hitung sp0,5r = sp1r – p0,5r*500
Hitung p0,1r = sp0,5r/100
Hitung sp0,1r = sp0,5r – p0,1r*100
c. Tampilkan p100r, p50r, p20r, p10r, p5r, p1r, p0,5r, p0,1r
Pseudocode
a. Input (uang)
b. p100r uang/100000
sp100r uang – p100r*100000
p50r sp100r/50000
sp50r sp100r – p50r*50000
p20r sp50r/20000
sp20r sp50r – p20r*20000
p10r sp20r/10000
sp10r sp20r – p10r*10000
p5r sp10r/5000
sp5r sp10r – p5r*5000
p1r sp5r/1000
sp1r sp5r – p1r*1000
p0,5r sp1r/500
sp0,5r sp1r – p0,5r*500
p0,1r sp0,5r/100
sp0,1 sp0,5r – p0,1r*100
c. output (p100r, p50r, p20r, p10r, p5r, p1r, p0,5r, p0,1r)
flowchart
3. Algoritma
a. Baca des
b. 1. Desimal=des/2
2. Sisa= desimal%2
3. d= d*2
4. biner= biner + sisa * d
5. jika desimal 0 pergi ke c
6. pergi ke 1
c. cetak desimal
Pseudocode
a. input (des)
b. Desimal des/2
c. Sisa desimal%2
d. D= d*2
e. Biner biner+sisa*d
f. If desimal == 0 output (desimal)
g. Else kembali ke b
Flowchart
4. Algoritma
a. Tentukan l,u,s,ns
b. Bonus =
1. Jika ns
2. Jika l <= 5 & u <=50
3. cetak bonus 400
4. jika l>= 5
5. cetak bonus 250
6. jika s
7. Jika l <= 5 & u <=50
8. Cetak bonus 1jt
9. jika l<= 5 & u >= 50
10. cetak bonus 500
11. else s u>=50
12. cetak bonus 300
c. tampilkan bonus
pseudocode
a. Input (l,u,s,ns)
b. Bonus =
1. Jika ns
2. Jika l <= 5 & u <=50
3. cetak bonus 400
4. jika l>= 5
5. cetak bonus 250
6. jika s
7. Jika l <= 5 & u <=50
8. Cetak bonus 1jt
9. jika l<= 5 & u >= 50
10. cetak bonus 500
11. else s u>=50
12. cetak bonus 300
c. Output (bonus)
Flowchart
5. Algoritma
a. Tentukan hari, jml
b. Jika hari minggu- jum’at
c. Cetak hrg hari = 33000
d. Total = jml*hrghari
e. Jika tidak
f. Cetak hrghari 40000
g. Total = jml*hrghar
Pseudocode
a. Input (hari,jml)
b. Jika hari = minggu, senin, selasa, rabu, kamis, jum’at
c. Hrghari = 33000
d. Jika tidak
e. Hrghari = 40000
f. Total jml*hrghari
g. Output (total)
Flowchart
6. Algoritma
a. Tentukan hari,jml,libur, tidak libur
b. Jika hari = senin, selasa, rabu,kamis, jum’at
c. Jika libur harga = 35.000
d. Jika tidak harga = 15.000
e. Jika hari = sabtu& minggu
f. Harga = 35.000
g. Total = jml*harga
h. Tampilkan total
Pseudocode
a. Input (hari,jml,libur, tidak libur)
b. Jika hari = senin, selasa, rabu,kamis, jum’at
c. Jika libur harga = 35.000
d. Jika tidak harga = 15.000
e. Jika hari = sabtu& minggu
f. Harga = 35.000
g. Total jml*harga
h. Output(total)
Flowchart
7. Algoritma
a. Tentukan harga
b. Jika harga<=400000
c. Hitung disc = harga*25/100
d. Jika harga <=300000
e. Hitung disc = harga*20/100
f. Jika harga <= 275000
g. Hitung disc = harga*15/100
h. Hitung disc harga<= 150000*10/100
i. Tampilkan disc
Pseudocode
a. Input (harga)
b. Jika harga<=400000
c. disc harga*25/100
d. Jika harga <=300000
e. disc harga*20/100
f. Jika harga <= 275000
g. disc harga*15/100
h. disc harga<= 150000*10/100
i. output (disc)
8. Algoritmaa. Input nilai tugas, nilai uas, nilai utsb. Jumlah nilai= (40%*nilai uas)+ (30%* nilai uts)+ (30%*nilai tugas)c. End
9.
10.
E. Source dan Output
1.
Output dari Source Code Diatas Adalah
2. package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class num2 {
public static void main(String[] args) {
// TODO code application logic here
long bil1, uang;
do
{
//inputan dari keyboard
System.out.print("masukkan Jumlah uang = ");
Scanner obj = new Scanner(System.in);
uang = obj.nextLong();
if (uang<100)
{ System.out.println("Maaf, tidak ada nominal uang "+ "sebesar "+uang+" rupiah"); continue; } else { if (uang >= 100000) { bil1 = uang / 100000; System.out.println("Diperlukan " + bil1 +" lembar 100000"); } uang = uang % 100000; if ((uang >= 50000) && (uang <100000))
{
bil1 = uang / 50000;
System.out.println("Diperlukan " + bil1 +" lembar 50000");
}
uang = uang % 50000; if ((uang >= 20000) && (uang <50000)) {
bil1 = uang / 20000; System.out.println("Diperlukan " + bil1 +" lembar 20000");
} uang = uang % 20000;
if ((uang >= 10000) && (uang <20000))
{
bil1 = uang / 10000;
System.out.println("Diperlukan " + bil1 +" lembar 10000");
}
// antara 5000-10000
uang = uang % 10000;
if ((uang >= 5000) && (uang <10000))
{
bil1 = uang / 5000;
System.out.println("Diperlukan " + bil1 +" lembar 5000");
}
// antara 2000-5000
uang = uang % 5000;
if ((uang >= 2000) && (uang <5000))
{
bil1 = uang / 2000;
Output Program :
uang = uang % 2000;
if ((uang >= 1000) && (uang <2000))
{ bil1 = uang / 1000; System.out.println("Diperlukan " + bil1 +" lembar 1000"); } uang = uang % 1000;
if ((uang >= 500) && (uang <1000)) { bil1 = uang / 500; System.out.println("Diperlukan " + bil1 +" koin 500"); } uang = uang % 500; if ((uang >= 200) && (uang <500)) { bil1 = uang / 200; System.out.println ("Diperlukan " + bil1 +" koin 200"); }uang = uang % 200;
if ((uang >= 100) && (uang <200))
{ bil1 = uang / 100; System.out.println ("Diperlukan " + bil1 +" koin 200"); }
} }while(uang!=0); }
}
3.
Result:
package tgas2;
import java.util.*;
import java.io.*; /**
*
* @author pc
*/
public class num3 {
public static void main(String[] args) {int angka;Scanner obj = new Scanner(System.in);System.out.print('\n'+"Masukkan Bil Desimal: "); angka = obj.nextInt();DesToBin(angka);}
static void DesToBin(int bil){int mod=0,sisa=0, i=0; boolean loop=true; int[] zz = new int[1000];sisa=bil;while (loop==true){ sisa = bil%2; bil= bil/2;zz[i]=sisa; i++;if((bil==0)||(bil==1)){ loop=false; zz[i]=bil; }} //Cetak Bilangan BinerSystem.out.print("konversinya ke bil.Biner adalah "); for (int a=i; a>=0;a--){ System.out.print(zz[a]);} System.out.print('\n');}}
1.package tgas2;
import java.io.*;
/**
*
* @author pc
*/
public class num4 {
public static void main(String[] args) {
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );
String kerja= "";
String usia= "";
String pegawai= "";
try{
System.out.print("Masukkan Lama Kerja : ");
kerja = dataIn.readLine();
System.out.print("Masukkan Usia : ");
usia = dataIn.readLine();
System.out.print("staff atau non staff : ");
pegawai = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
int massa = Integer.parseInt(kerja);
int umur = Integer.parseInt(usia);
if ("staff".equals(pegawai) && (massa>=5) && (umur>=50)){
System.out.println("Bonus anda 1.000.000");
}
RESULT:
2.
else if ("staff".equals(pegawai) && (massa<5)){
System.out.println("Bonus anda 500.000");
}
else if ("staff".equals(pegawai) && (umur < 50)){
System.out.println("Bonus anda 300.000");
}
else if ("non staff".equals(pegawai) && (massa>5) && (umur>50)){
System.out.println("Bonus anda 400.000");
}
else if ("non staff".equals(pegawai) && (massa<5)){
System.out.println("Bonus anda 250.000");
}
else if ("non staff".equals(pegawai) && (umur<50)){
System.out.println("Bonus anda 250.000");
}
else {
System.out.println("Maaf, format status pegawai anda salah. Contoh = staff / non staff");
}
}
}
5.
RESULT :
package tgas2;
import java.io.*;
/**
*
* @author pc
*/
public class num5 {public static void main(String[] args) {BufferedReader dataIn = new BufferedReader(newInputStreamReader( System.in) );String hari= "";String baris= "";try{System.out.print("Masukkan Hari : ");hari = dataIn.readLine();System.out.print("Masukkan jumlah baris : ");baris = dataIn.readLine();}catch( IOException e ){System.out.println("Error!");}
int total = Integer.parseInt(baris);if("Minggu".equals(hari) || "Senin".equals(hari) || "Selasa".equals(hari) || "Rabu".equals(hari) || "Kamis".equals(hari) || "Jumat".equals(hari)){ System.out.println("Total Biaya = "+total * 33000); }else if("Sabtu".equals(hari)){ System.out.println("Total Biaya = "+total * 40000); }else {System.out.println("Maaf, format hari anda salah. Awali huruf kapital. Contoh = Senin ");}}
}
3.package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class num6 {public static void main(String[] args) {Scanner dino = new Scanner(System.in);Scanner jumlah = new Scanner(System.in); Scanner libur = new Scanner(System.in); int tiket,hari,lib,a,b,c; System.out.println("Harga tiket bioskop di Surabaya City");System.out.println("- Senin – Kamis : Rp 15.000,-");System.out.println("- Jumat s/d Minggu : Rp 35.000,-");System.out.println("- Hari Libur : Rp 35.000,-"); System.out.println("\nINPUT");
System.out.println("1 = Senin | 2 = Selasa | 3 = Rabu");System.out.println("4 = Kamis | 5 = Jumat | 6 = Sabtu | 7 = Minggu "); System.out.println("8 = Hari Libur | 9 = Bukan Hari Libur");System.out.print("\nMasukan Hari = ");hari = dino.nextInt();System.out.print("Jumlah Tiket = ");tiket = jumlah.nextInt();
System.out.print("Apakah hari libur = ");
lib = libur.nextInt();a = tiket * 15000;b = tiket * 35000;if (hari == 1 && lib != 8 || hari == 2 && lib != 8 || hari == 3 && lib != 8 || hari == 4 && lib != 8 ){System.out.println("Total yang harus dibayar adalah = "+a);}else if (hari == 1 && lib == 8 || hari == 2 && lib == 8 || hari == 3 && lib == 8 || hari == 4 && lib == 8){System.out.println("Total yang harus dibayar adalah = "+b);}else if (hari == 5 || hari == 6 || hari == 7)
{ System.out.println("Total yang harus dibayar adalah = "+b); } }}
RESULT :
4.package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class NUM7 {public static void main(String[] args) {Scanner belanja = new Scanner(System.in);double total,diskon,bayar;System.out.print("Total Belanja : ");
total = belanja.nextInt();if(total<150000){diskon= total * 0;bayar=total-diskon;System.out.print("DisC = "+diskon);System.out.print("\nYang harus dibayar = "+bayar);}else if(total<275000){
diskon= total * 0.1;bayar=total-diskon;System.out.print("DisC = "+diskon);System.out.print("\nYang harus dibayar = "+bayar);}else if(total<300000){diskon= total * 0.15;bayar=total-diskon;System.out.print("DisC = "+diskon);System.out.print("\nYang harus dibayar = "+bayar);
}else if(total<400000){
RESULT:
diskon= total * 0.20;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
else {
diskon= total * 0.25;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
}
}
5.package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class NUM8 {
public static void main(String[] args) {
Scanner tugas1 = new Scanner(System.in);
Scanner tugas2 = new Scanner(System.in);
Scanner tugas3 = new Scanner(System.in);
Scanner yutc = new Scanner(System.in);
Scanner yuac = new Scanner(System.in);
int tgs1,tgs2,tgs3,utc,uac,rata;
double nilai;System.out.print("\nMasukkan Nilai Tugas 1 = ");tgs1 = tugas1.nextInt();System.out.print("Masukkan Nilai Tugas 2 = ");tgs2 = tugas2.nextInt();System.out.print("Masukkan Nilai Tugas 3 = "); tgs3 = tugas3.nextInt();System.out.print("Masukkan Nilai UTC = "); utc = yutc.nextInt();System.out.print("Masukkan Nilai UAC = "); uac = yuac.nextInt();rata = (tgs1+tgs2+tgs3)/3;
nilai=((rata*0.3)+(utc*0.3)+(uac*0.4));
if (nilai > 80 && nilai <=100){System.out.println("Nilai anda adalah A"); }else if (nilai > 70 && nilai <=80){System.out.println("Nilai anda adalah AB");
}
else if (nilai > 65 && nilai <=70){
System.out.println("Nilai anda adalah B");
RESULT :
}
else if (nilai > 60 && nilai <=65){
System.out.println("Nilai anda adalah BC");
}
else if (nilai > 55 && nilai <=60){
System.out.println("Nilai anda adalah C");
}
else if (nilai > 40 && nilai <=50){
System.out.println("Nilai anda adalah D");
}
else if (nilai > 0 && nilai <=40){
System.out.println("Nilai anda adalah E");
}
}
}
6.
RESULT :
package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class NUM9 {
public static void main(String[] args) {
Scanner pemakaian = new Scanner(System.in);double air; System.out.print("Jumlah Pemakaian : "); air = pemakaian.nextInt(); if (air < 0){ System.out.print("Biaya total : "+air*0); } else if (air <= 50){System.out.print("Biaya total : "+air*200); }else if (air <= 150){System.out.print("Biaya total : "+((50*200)+((air-50)*500))); } else if (air <= 300){System.out.print("Biaya total : "+((50*200)+(100*500)+((air-150)*1000)));} else {System.out.print("Biaya total : "+((50*200)+(100*500)+(150 * 1000)+((air-300)*1500))); }}}
7.package tgas2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
/**
*
* @author pc
*/
public class NUM10 {
public static void main(String[] args) {
// TODO code application logic here
String str_pemakaian ="";
int pemakaian1=0;
int pemakaian2=0;
int pemakaian3=0;
int pemakaian4=0;
int cash_back_total=0;BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in) );System.out.print("Masukkan jumlah pemakaian credit Card: "+str_pemakaian+"");try{str_pemakaian = dataIn.readLine();}catch( IOException e ){System.out.println("Error!");}if(str_pemakaian.length()>0){int jml_pemakaian = Integer.parseInt(str_pemakaian);pemakaian1=1000000;if(jml_pemakaian<=1000000){pemakaian1=jml_pemakaian;
}
}
else if(jml_pemakaian>1000000 && jml_pemakaian<=10000000){
pemakaian1=1000000;
pemakaian2=jml_pemakaian-1000000; }else if(jml_pemakaian>10000000 && jml_pemakaian<=25000000){pemakaian2=10000000;pemakaian3=jml_pemakaian-25000000;}else if(jml_pemakaian>25000000){pemakaian2=10000000;pemakaian3=25000000;pemakaian4=jml_pemakaian-25000000;}cash_back_total = (pemakaian1*5/100)+(pemakaian2*6/100)+(pemakaian3*7/100)+(pemakaian4*8/100);DecimalFormat df = (DecimalFormat) DecimalFormat.getCurrencyInstance();DecimalFormatSymbols dfs = new DecimalFormatSymbols();dfs.setCurrencySymbol("");dfs.setMonetaryDecimalSeparator(',');dfs.setGroupingSeparator('.');df.setDecimalFormatSymbols(dfs);String jumlah_pemakaian = "Rp. " + df.format(jml_pemakaian);String hsl_biaya_total = "Rp. " + df.format(cash_back_total);System.out.println("nasabah yang total 1 bulan "+jumlah_pemakaian+", maka total cash back adalah= "+hsl_biaya_total);} else{System.out.println("\nAda salah satu masukan yang kosong!");return;}}}
RESULT :
REFERENSI
Nazruddin Safaat H. 2011. Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android. Informatika. Bandung
Avestro, Joyce. (2007). Pengembangan Perangkat Mobile : Java Education NetworkIndonesia (JENI)
Bambang Hariyanto, “Esensi-esensi Bahasa Pemrograman Java”, Informatika, Bandung, 2005.
Sinaga B.L, “Pemrograman Berorientasi Objek dengan Java”, Gava Media, Yogyakarta, 2004.
Rangsang Purnama, “Tuntunan Pemrograman Java Jilid 3”, Prestasi Pustaka, Jakarta, 2005.
Prasetyo D.D, “Solusi Membuat Aplikasi Java dengan Java Studio”, Elex Media Komputindo,
Jakarta, 2004.
Ian Leonardo, “Pemrograman Database dengan Java”, Elex Media Komputindo, Jakarta, 2004.
3.
Output dari Source Code Diatas Adalah
4. package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class num2 {
public static void main(String[] args) {
// TODO code application logic here
long bil1, uang;
do
{
//inputan dari keyboard
System.out.print("masukkan Jumlah uang = ");
Scanner obj = new Scanner(System.in);
package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class num2 {
public static void main(String[] args) {
// TODO code application logic here
long bil1, uang;
do
{
//inputan dari keyboard
System.out.print("masukkan Jumlah uang = ");
Scanner obj = new Scanner(System.in);
System.out.println("Diperlukan " + bil1 +" lembar 50000");
}
uang = uang % 50000; if ((uang >= 20000) && (uang <50000)) {
bil1 = uang / 20000; System.out.println("Diperlukan " + bil1 +" lembar 20000");
} uang = uang % 20000;
if ((uang >= 10000) && (uang <20000))
{
bil1 = uang / 10000;
System.out.println("Diperlukan " + bil1 +" lembar 10000");
}
// antara 5000-10000
uang = uang % 10000;
if ((uang >= 5000) && (uang <10000))
{
bil1 = uang / 5000;
Output Program :
System.out.println("Diperlukan " + bil1 +" lembar 50000");
}
uang = uang % 50000; if ((uang >= 20000) && (uang <50000)) {
bil1 = uang / 20000; System.out.println("Diperlukan " + bil1 +" lembar 20000");
} uang = uang % 20000;
if ((uang >= 10000) && (uang <20000))
{
bil1 = uang / 10000;
System.out.println("Diperlukan " + bil1 +" lembar 10000");
}
// antara 5000-10000
uang = uang % 10000;
if ((uang >= 5000) && (uang <10000))
{
bil1 = uang / 5000;
uang = uang % 2000;
if ((uang >= 1000) && (uang <2000))
{ bil1 = uang / 1000; System.out.println("Diperlukan " + bil1 +" lembar 1000"); } uang = uang % 1000;
if ((uang >= 500) && (uang <1000)) { bil1 = uang / 500; System.out.println("Diperlukan " + bil1 +" koin 500"); } uang = uang % 500; if ((uang >= 200) && (uang <500)) { bil1 = uang / 200; System.out.println ("Diperlukan " + bil1 +" koin 200"); }uang = uang % 200;
if ((uang >= 100) && (uang <200))
{ bil1 = uang / 100; System.out.println ("Diperlukan " + bil1 +" koin 200"); }
} }while(uang!=0); }
}
4.
Result:
package tgas2;
import java.util.*;
import java.io.*; /**
*
* @author pc
*/
public class num3 {
public static void main(String[] args) {int angka;Scanner obj = new Scanner(System.in);System.out.print('\n'+"Masukkan Bil Desimal: "); angka = obj.nextInt();DesToBin(angka);}
static void DesToBin(int bil){int mod=0,sisa=0, i=0; boolean loop=true; int[] zz = new int[1000];sisa=bil;while (loop==true){ sisa = bil%2; bil= bil/2;zz[i]=sisa; i++;if((bil==0)||(bil==1)){ loop=false; zz[i]=bil; }} //Cetak Bilangan BinerSystem.out.print("konversinya ke bil.Biner adalah "); for (int a=i; a>=0;a--){ System.out.print(zz[a]);} System.out.print('\n');}}
8.package tgas2;
import java.io.*;
/**
*
* @author pc
*/
public class num4 {
public static void main(String[] args) {
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );
String kerja= "";
String usia= "";
String pegawai= "";
try{
System.out.print("Masukkan Lama Kerja : ");
kerja = dataIn.readLine();
System.out.print("Masukkan Usia : ");
usia = dataIn.readLine();
System.out.print("staff atau non staff : ");
pegawai = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
int massa = Integer.parseInt(kerja);
int umur = Integer.parseInt(usia);
if ("staff".equals(pegawai) && (massa>=5) && (umur>=50)){
System.out.println("Bonus anda 1.000.000");
}
RESULT:
9.
else if ("staff".equals(pegawai) && (massa<5)){
System.out.println("Bonus anda 500.000");
}
else if ("staff".equals(pegawai) && (umur < 50)){
System.out.println("Bonus anda 300.000");
}
else if ("non staff".equals(pegawai) && (massa>5) && (umur>50)){
System.out.println("Bonus anda 400.000");
}
else if ("non staff".equals(pegawai) && (massa<5)){
System.out.println("Bonus anda 250.000");
}
else if ("non staff".equals(pegawai) && (umur<50)){
System.out.println("Bonus anda 250.000");
}
else {
System.out.println("Maaf, format status pegawai anda salah. Contoh = staff / non staff");
}
}
}
6.
RESULT :
package tgas2;
import java.io.*;
/**
*
* @author pc
*/
public class num5 {public static void main(String[] args) {BufferedReader dataIn = new BufferedReader(newInputStreamReader( System.in) );String hari= "";String baris= "";try{System.out.print("Masukkan Hari : ");hari = dataIn.readLine();System.out.print("Masukkan jumlah baris : ");baris = dataIn.readLine();}catch( IOException e ){System.out.println("Error!");}
int total = Integer.parseInt(baris);if("Minggu".equals(hari) || "Senin".equals(hari) || "Selasa".equals(hari) || "Rabu".equals(hari) || "Kamis".equals(hari) || "Jumat".equals(hari)){ System.out.println("Total Biaya = "+total * 33000); }else if("Sabtu".equals(hari)){ System.out.println("Total Biaya = "+total * 40000); }else {System.out.println("Maaf, format hari anda salah. Awali huruf kapital. Contoh = Senin ");}}
}
10.package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class num6 {public static void main(String[] args) {Scanner dino = new Scanner(System.in);Scanner jumlah = new Scanner(System.in); Scanner libur = new Scanner(System.in); int tiket,hari,lib,a,b,c; System.out.println("Harga tiket bioskop di Surabaya City");System.out.println("- Senin – Kamis : Rp 15.000,-");System.out.println("- Jumat s/d Minggu : Rp 35.000,-");System.out.println("- Hari Libur : Rp 35.000,-"); System.out.println("\nINPUT");
System.out.println("1 = Senin | 2 = Selasa | 3 = Rabu");System.out.println("4 = Kamis | 5 = Jumat | 6 = Sabtu | 7 = Minggu "); System.out.println("8 = Hari Libur | 9 = Bukan Hari Libur");System.out.print("\nMasukan Hari = ");hari = dino.nextInt();System.out.print("Jumlah Tiket = ");tiket = jumlah.nextInt();
System.out.print("Apakah hari libur = ");
lib = libur.nextInt();a = tiket * 15000;b = tiket * 35000;if (hari == 1 && lib != 8 || hari == 2 && lib != 8 || hari == 3 && lib != 8 || hari == 4 && lib != 8 ){System.out.println("Total yang harus dibayar adalah = "+a);}else if (hari == 1 && lib == 8 || hari == 2 && lib == 8 || hari == 3 && lib == 8 || hari == 4 && lib == 8){System.out.println("Total yang harus dibayar adalah = "+b);}else if (hari == 5 || hari == 6 || hari == 7)
{ System.out.println("Total yang harus dibayar adalah = "+b); } }}
RESULT :
11.package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class NUM7 {public static void main(String[] args) {Scanner belanja = new Scanner(System.in);double total,diskon,bayar;System.out.print("Total Belanja : ");
total = belanja.nextInt();if(total<150000){diskon= total * 0;bayar=total-diskon;System.out.print("DisC = "+diskon);System.out.print("\nYang harus dibayar = "+bayar);}else if(total<275000){
diskon= total * 0.1;bayar=total-diskon;System.out.print("DisC = "+diskon);System.out.print("\nYang harus dibayar = "+bayar);}else if(total<300000){diskon= total * 0.15;bayar=total-diskon;System.out.print("DisC = "+diskon);System.out.print("\nYang harus dibayar = "+bayar);
}else if(total<400000){
RESULT:
diskon= total * 0.20;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
else {
diskon= total * 0.25;
bayar=total-diskon;
System.out.print("DisC = "+diskon);
System.out.print("\nYang harus dibayar = "+bayar);
}
}
}
12.package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class NUM8 {
public static void main(String[] args) {
Scanner tugas1 = new Scanner(System.in);
Scanner tugas2 = new Scanner(System.in);
Scanner tugas3 = new Scanner(System.in);
Scanner yutc = new Scanner(System.in);
Scanner yuac = new Scanner(System.in);
int tgs1,tgs2,tgs3,utc,uac,rata;
double nilai;System.out.print("\nMasukkan Nilai Tugas 1 = ");tgs1 = tugas1.nextInt();System.out.print("Masukkan Nilai Tugas 2 = ");tgs2 = tugas2.nextInt();System.out.print("Masukkan Nilai Tugas 3 = "); tgs3 = tugas3.nextInt();System.out.print("Masukkan Nilai UTC = "); utc = yutc.nextInt();System.out.print("Masukkan Nilai UAC = "); uac = yuac.nextInt();rata = (tgs1+tgs2+tgs3)/3;
nilai=((rata*0.3)+(utc*0.3)+(uac*0.4));
if (nilai > 80 && nilai <=100){System.out.println("Nilai anda adalah A"); }else if (nilai > 70 && nilai <=80){System.out.println("Nilai anda adalah AB");
}
else if (nilai > 65 && nilai <=70){
System.out.println("Nilai anda adalah B");
RESULT :
}
else if (nilai > 60 && nilai <=65){
System.out.println("Nilai anda adalah BC");
}
else if (nilai > 55 && nilai <=60){
System.out.println("Nilai anda adalah C");
}
else if (nilai > 40 && nilai <=50){
System.out.println("Nilai anda adalah D");
}
else if (nilai > 0 && nilai <=40){
System.out.println("Nilai anda adalah E");
}
}
}
13.
RESULT :
package tgas2;
import java.util.*;
/**
*
* @author pc
*/
public class NUM9 {
public static void main(String[] args) {
Scanner pemakaian = new Scanner(System.in);double air; System.out.print("Jumlah Pemakaian : "); air = pemakaian.nextInt(); if (air < 0){ System.out.print("Biaya total : "+air*0); } else if (air <= 50){System.out.print("Biaya total : "+air*200); }else if (air <= 150){System.out.print("Biaya total : "+((50*200)+((air-50)*500))); } else if (air <= 300){System.out.print("Biaya total : "+((50*200)+(100*500)+((air-150)*1000)));} else {System.out.print("Biaya total : "+((50*200)+(100*500)+(150 * 1000)+((air-300)*1500))); }}}
14.package tgas2;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
/**
*
* @author pc
*/
public class NUM10 {
public static void main(String[] args) {
// TODO code application logic here
String str_pemakaian ="";
int pemakaian1=0;
int pemakaian2=0;
int pemakaian3=0;
int pemakaian4=0;
int cash_back_total=0;BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in) );System.out.print("Masukkan jumlah pemakaian credit Card: "+str_pemakaian+"");try{str_pemakaian = dataIn.readLine();}catch( IOException e ){System.out.println("Error!");}if(str_pemakaian.length()>0){int jml_pemakaian = Integer.parseInt(str_pemakaian);pemakaian1=1000000;if(jml_pemakaian<=1000000){pemakaian1=jml_pemakaian;
}
}
else if(jml_pemakaian>1000000 && jml_pemakaian<=10000000){
pemakaian1=1000000;
pemakaian2=jml_pemakaian-1000000; }else if(jml_pemakaian>10000000 && jml_pemakaian<=25000000){pemakaian2=10000000;pemakaian3=jml_pemakaian-25000000;}else if(jml_pemakaian>25000000){pemakaian2=10000000;pemakaian3=25000000;pemakaian4=jml_pemakaian-25000000;}cash_back_total = (pemakaian1*5/100)+(pemakaian2*6/100)+(pemakaian3*7/100)+(pemakaian4*8/100);DecimalFormat df = (DecimalFormat) DecimalFormat.getCurrencyInstance();DecimalFormatSymbols dfs = new DecimalFormatSymbols();dfs.setCurrencySymbol("");dfs.setMonetaryDecimalSeparator(',');dfs.setGroupingSeparator('.');df.setDecimalFormatSymbols(dfs);String jumlah_pemakaian = "Rp. " + df.format(jml_pemakaian);String hsl_biaya_total = "Rp. " + df.format(cash_back_total);System.out.println("nasabah yang total 1 bulan "+jumlah_pemakaian+", maka total cash back adalah= "+hsl_biaya_total);} else{System.out.println("\nAda salah satu masukan yang kosong!");return;}}}
RESULT :
REFERENSI
http://rangerdhemoth.blogspot.com/2011/12/pengertian-netbeans.html
http://id.wikipedia.org/wiki/Eclipse_%28perangkat_lunak%29
http://baliti.wordpress.com/
http://hermankomputer.blogspot.com/2011/07/operator-dalam-pascal-dalam-menulis.html
http://hermankomputer.blogspot.com/2011/07/operator-dalam-pascal-dalam-menulis.html
http://pakarjava.wordpress.com/2012/05/25/operator-logika/
http://zuriatiskom.tripod.com/operator.html
http://agungimam.blogspot.com/2013/04/percabangan-java-if-else-if-if-else.html