Senin, 28 Oktober 2013

TUGAS MODUL II PRAKTIKUM DASAR PEMROGRAMAN



DASAR TEORI
1.    Netbeans
Salah satu editor dalam java adalah NetBeans. Editor ini luar biasa untuk membuat aplikasi java, karena didukung dengan fasilitas drag and drop komponen,  yaitu dukungan Rapid Aplication Development (pemrograman berbasis visual dan template). Satu hal lagi yang paling penting adalah produk ini free, yang dibuat oleh Sun Microsystem. NetBeans juga memiliki IDE (Integrated Development Environment), ada juga yang bilang Integrated Design Environment dan Integrated Debugging Environment, yakni sebuah program/alat bantu yang terdiri atas Editor, Compiler, Debugger dan Design yang terintegrasi dalam satu aplikasi.
         a.     Keunggulan Netbeans
1)   NetBeans GUI Builder GRATIS dengan ribuan plug In yang bisa kita download langsung di website resminya, maupun dari pihak ketiga.
2)   NetBeans GUI Builder sangat kompetebel dengan Swing karena memang langsung dikembangkan oleh Sun Microsystem yang notabenenya sebagai pengembang Swing. 

 
3)   Netbeans tidak hanya dapat digunakan buat java saja, karena Netbeans dapat di gunakan untuk bahasa pemograman lain seperti C/C++, Ruby, dan PHP.
4)   NetBeans GUI Builder sangat cocok untuk digunakan dalam pengembangan sistem berskala Enterprise.
5)   Pada paket tertentu, Netbeans juga menyertakan GlassFish V2 UR2 dan Apache Tomcat 6.0.16

        b.     Kelemahan Netbeans
1)   NetBeans hanya mensupport satu pengembangan Java GUI, yaitu Swing, yang padahal ada Java GUI yang dikembangkan oleh eclipse yang bernama SWT dan JFace yang sudah cukup popular     
2)   NetBeans mempatenkan source untuk Java GUI yang sedang dikerjakan dalam sebuah Generated Code, sehingga programmer tak dapat mengeditnya secara manual.
3)   Dari segi sumber daya, Netbeans memerlukan sumber daya yang besar, seperti Memory dan ruang hard disk.
4)   Netbeans memerlukan dukungan prosesor yang cukup handal untuk mendapatkan performa maksimalnya.

2.    Eclipse
Menurut Nasruddin Safaat (Pemrograman aplikasi mobeli smartphone dan tablet PC berbasis android 2012:16) 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:
                      a.      Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
                     b.      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.
                      c.      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. Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota 'Eclipse Foundation' (beserta individu-individu lain). Banyak nama besar yang ikut dalam 'Eclipse Foundation', termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya.
                                     a.     IntelliJ IDEA (commercial, free 30-day trial)
                                     b.     Oracle JDeveloper (free)
                                     c.     Xinox JCreator (ada versi berbayar maupun free)
Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan oleh IBM pada tanggal 5 November 2001, yang menginvestasikan sebanyak US$ 40 juta untuk pengembangannya. Semenjak itu konsursium Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih lanjut dan pengaturan organisasinya. Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP:
                                     a.     Core platform
                                     b.     OSGi
                                     c.     SWT (Standard Widget Toolkit)
                                    d.      JFace
                                     e.      Eclipse Workbench
Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT (C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat Diagram UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya. Salah satu situs yang menawarkan plug-in secara gratis seperti Eclipse downloads by project.
Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse secara rutin dan simultan yang dikenal dengan nama Simultaneous Release. Setiap versi peluncuran terdiri dari Eclipse Platform dan juga sejUMLah proyek yang terlibat dalam proyek Eclipse. Tujuan dari sistem ini adalah untuk menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang terstandarisasi. Hal ini juga dimaksudkan untuk mempermudah Deployment dan maintenance untuk sistem enterprise, serta untuk kenyamanan.Peluncuran simultan dijadwalkan pada bulan Juni setiap tahunnya.



3.    Penulisan Program Di Java,Input & Output
Pada NetBeans membuat kode dasar untuk program Java Anda. Anda dapat menambah pernyataan-pernyataan Anda pada kode yang telah di-generate. Pada sisi kiri jendela, Anda dapat melihat daftar folder dan filefile yang dihasilkan NetBeans setelah membuat sebuah project. Semua ini dapat Anda temukan dalam folder MYJAVAPROGRAMS Anda, dimana Anda menetapkan lokasi project tersebut. Sekarang, cobalah memodifikasi kode yang dihasilkan oleh NetBeans. Untuk saat ini abaikan bagian-bagian lain dari program, detail dari kode tersebut akan dijelaskan pada bagian berikutnya. Masukkan kode :
System.out.println("Hello world!");
Setelah pernyataan, //TODO code application logic here.


Untuk menjalankan program Anda, klik pada Run > Run Main Project. Atau Anda juga dapat menggunakan tombol shortcut untuk menjalankan program Anda.
Hasil dari program Anda ditampilkan pada jendela.


4.    Operator
Operator merupakan sebuah karakter khusus yang digunakan untuk menghasilkan suatu nilai.

        a.     Operator Assigment ( Penugasan )


Operator ini berfungsi untuk menyingkat / memendekkan penulisan operasi penugasan. Daftar berikut memberikan seluruh kemungkinan operator kombinasi dalam suatu pernyataan.


        b.     Operator Matematika
Operator aritmatika digunakan untuk melakukan operasi matematika, seperti penambahan, pengurangan, pembagian, dan modulo (atau sisa pembagian).
Contoh penggunaan :
+ Operator penjumlahan (juga sebagai penyambung string)
- Operator pengurangan
* Operator perkalian
/ Operator pembagian
% Operator sisa pembagian
Simbol
Nama operator
Contoh penggunaan
+
Operator penjumlahan
n = n + 1;
-
Operator pengurangan
n = n – 1;
*
Operator perkalian
n = n * 1;
/
Operator pembagian
n = n / 1;
%
Operator sisa pembagian
n = n % 1;
+
Operator penyambung string
n = “saya “+”tidur”;

         c.     Operator pembanding
Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yang sering digunakan untuk mengatur alur jalannya sebuah program.
Hasil dari operasi pembanding adalah boolean. True jika operasi pembanding tersebut benar, dan false jika operasi pembanding tersebut salah.
Contoh :
boolean a = 10 == 100;
System.out.println(a);
Hasil dari program diatas adalah false, karena memang 10 tidak sama dengan 100.

        d.     Operator Logika
Operator logika biasa digunakan untuk menghubungkan dua buah ungkapan kondisi menjadi sebuah ungkapan kondisi. Operator-operator ini berupa :
Contoh Penggunaan :



5.    Tingkatan Operator
Java mempunyai aturan untuk menentukan urutan dimana operator di dalam ekspresi dievaluasi ketika suatu ekspresi mempunyai beberapa operator (disebut dengan operator precedence). Operator precedence adalah urutan evaluasi dimana operator yang ada di suatu ekspresi akan dievaluasi berdasarkan aturan prioritas yang ditentukan. Operator dengan prioritas lebih tinggi akan dievaluasi terlebih dahulu dibandingkan dengan operator yang mempunyai prioritas lebih rendah. Apabila beberapa operator di dalam ekspresi mempunyai prioritas yang sama, maka operator akan dievaluasi berdasarkan asosiasi dari operator tersebut (operator association).
Berikut ini adalah tabel operator di Java dengan tingkatan prioritas:
Perhatikan contoh ekspresi numerik Java di bawah ini.
5 + 20 * 2 – 20 / 2 + (10 - 2);
Java akan mengevaluasi ekspresi numerik tersebut dengan urutan sebagai berikut:
1.    Ekspresi numerik yang terdapat di dalam kurung buka tutup akan dievaluasi pertama kali karena mempunyai prioritas paling tinggi dibandingkan dengan operator perkalian (*), pembagian (/), penjumlahan (+) dan pengurangan (-) sehingga ekspresi numerik akan menjadi 5 + 20 * 2 – 20 / 2 + 8.
2.    Operator perkalian (*) dan pembagian (/) akan dievaluasi berikutnya mulai dari kiri ke kanan karena memiliki prioritas yang sama dan lebih tinggi dari operator penjumlahan (+) dan pengurangan (-) sehingga ekspresi numerik menjadi 5 + 40 – 10 + 8.
3.      Operator penambahan dan pengurangan mempunyai prioritas yang sama dan akan dievaluasi terakhir mulai dari kiri ke kanan sehingga menghasilkan nilai 43.

6.    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 :
a.    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. 

b.    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.

c.     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.

d.    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.



                        SOAL PRAKTIKUM

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, 

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:
http://pad3.whstatic.com/images/thumb/d/d1/Convert-from-Decimal-to-Binary-Step-14.jpg/550px-Convert-from-Decimal-to-Binary-Step-14.jpg


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.



                                    FLOWCHART

1.      Flowchart untuk mencari sisi miring dari suatu segitiga siku-siku


2.      Flowchart untuk menampilkan banyaknya pecahan uang paling efisien dari sejumlah uang yang di inputkan oleh pengguna.



3.      Flowchart untuk mengkonversi bilangan dalam format desimal menjadi biner.



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.
Flowchartnya Adalah?










5.       Flowchart untuk menghitung total biaya iklan baris yang harus dibayar oleh pengiklan.





6.      Flowchart untuk menghitung total biaya tiket
                                       








7.       Buatlah algoritma untuk menghitung berapa nilai yang harus dibayar oleh pelanggan dengan total nilai belanja tertentu bila disertakan pula perhitungan diskonnya.



8.      Flowchart untuk menghitung nilai, dan konversi menjadi nilai huruf



SOURCE CODE & OUTPUT

1.     


package tgas2;
import java.util.*;
/**
 *
 * @author pc
 */
public class num1 {
  public static void main(String[] args) {
        // TODO code application logic here
Scanner masuk = new    Scanner(System.in);
        int sisi1,sisi2,c;
        System.out.println("Mengitung Panjang sisi miring Segitiga siku-siku");
        System.out.print("Masukan Nilai Sisi 1   : ");
        sisi1 = masuk.nextInt();
        System.out.print("Masukan Nilai Sisi 2   : ");
        sisi2 = masuk.nextInt();
        c=((sisi1*sisi1)+(sisi2*sisi2));
        System.out.println("Panjang sisi miring segitiga siku-siku adalah = "+(Math.sqrt(c)));
    }
}
 
 
























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"); 
       } 
   

       // antara 20000-50000 
       uang = uang % 50000; 
       if ((uang >= 20000) && (uang <50000)) 
       { 
           bil1 = uang / 20000; 
           System.out.println("Diperlukan "  + bil1 +" lembar 20000"); 
       } 
 
       // antara 10000-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; 
           System.out.println("Diperlukan "  + bil1 +" lembar 2000"); 
       } 
 
       // antara 1000-2000 
       uang = uang % 2000; 
       if ((uang >= 1000) && (uang <2000)) 
       { 
           bil1 = uang / 1000; 
           System.out.println("Diperlukan "  + bil1 +" lembar 1000"); 
       } 
 
       // antara 500-1000 
       uang = uang % 1000; 
       if ((uang >= 500) && (uang <1000)) 
       { 
           bil1 = uang / 500; 
           System.out.println("Diperlukan "  + bil1 +" koin 500"); 
       } 
 
       // antara 200-500 
       uang = uang % 500; 
       if ((uang >= 200) && (uang <500))  
       { 
          bil1 = uang / 200; 
          System.out.println ("Diperlukan "  + bil1 +" koin 200"); 
       } 
 
       // antara 100-200 
       uang = uang % 200; 
       if ((uang >= 100) && (uang <200)) 
       { 
          bil1 = uang / 100; 
          System.out.println ("Diperlukan "  + bil1 +" koin 200"); 
       } 
            
     } 
   }while(uang!=0); 
  }

}
 
 
























                             
           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; 
           System.out.println("Diperlukan "  + bil1 +" lembar 2000"); 
       } 
       if ((uang >= 1000) && (uang <2000)) 
       { 
           bil1 = uang / 1000; 
           System.out.println("Diperlukan "  + bil1 +" lembar 1000"); 
       } 
 
       // antara 500-1000 
       uang = uang % 1000; 
       if ((uang >= 500) && (uang <1000)) 
       { 
           bil1 = uang / 500; 
           System.out.println("Diperlukan "  + bil1 +" koin 500"); 
       } 
 
       // antara 200-500 
       uang = uang % 500; 
       if ((uang >= 200) && (uang <500)) 
       { 
          bil1 = uang / 200; 
          System.out.println ("Diperlukan "  + bil1 +" koin 200"); 
       } 
 
       // antara 100-200 
       uang = uang % 200; 
       if ((uang >= 100) && (uang <200)) 
       { 
          bil1 = uang / 100; 
          System.out.println ("Diperlukan "  + bil1 +" koin 200"); 
       } 
            
     } 
   }while(uang!=0); 
  }

}
 

 


       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);
}
}
 
 

















Output Program :



3.      


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 Biner
System.out.print("konversinya ke bil.Biner adalah "); for (int a=i; a>=0;a--){ System.out.print(zz[a]);
} System.out.print('\n');
}
}

 
 

















                                      Result:


4.      


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");
 }  
 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");
 }
    }
}
 
 
























                     

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");
 }
    }
}












 
 

















RESULT:


5.        
5.      


package tgas2;
import java.io.*;
/**
 *
 * @author pc
 */
public class num5 {
public static void main(String[] args) {
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( 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 ");
}
}
}
 
 




















             RESULT :
6.      


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 :
7.      


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){
            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);
        }
    }
}
 
 





















            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);
        }
    }
}

 
               











                            RESULT:
                           



8.      


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");
        }
        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");
        }
    }
}
 
 


























        }
        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");
        }
    }
}

 
 














                                           RESULT :



9.      


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)));
 }
}
}
 
 




















                RESULT :
10.  


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 pemakaian = Integer.parseInt(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 Kartu Kredit : "+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("Seorang nasabah yang total selama sebulan "+jumlah_pemakaian+", maka total cash backnya= "+hsl_biaya_total);
        }  
        else{
            System.out.println("\nAda salah satu masukan yang kosong!");
            return;
        }
    }
}
 
 
























                                                                                          


 


DAFTAR PUSTAKA

Tidak ada komentar:

Posting Komentar