Selasa, 25 Desember 2012

CONTOH SOAL JAVA


SOAL JAVA
CV.Maju Mundur memiliki 40 orang pegawai, dimana ke-40 pegawainya tersebut terbagi menjadi 2 status kepegawaian, yaitu sebagian pegawai tetap dan sebagian yang lain (sisanya) adalah pegawai kontrak. Secara umum perbedaan antara keduanya adalah pegawai tetap selain mendapatkan gaji juga mendapatkan tunjangan yang besarnya 200 ribu, sedangkan pegawai kontrak hanya menda patkan gaji saja.
Dari kasusdiatas, dapatdigambarkanclass-class pegawaisebagaiberikut:
̇       Class Pegawai Kontrak, dengan atribut :
        NoPeg                           : no pegawaikontrak(diinputkan)
       Nama                              :namapegawai (diinputkan)
MasaKontrak                  :lamakontrakpegawai(diinputkan)
Kehadiran                       : jumlahharimasukdalam 1bulan(diinputkan)
UangMakan                    : besarnya6ribudikalijumlahkehadiran(tidakdiinputkan)
Gaji                                 :  besarnyagajipokokyang  diterimatiapbulan(diinputkan)

̇       ClassPegawaiTetap,denganatribut :
NoPeg                 :no pegawaikontrak(diinputkan)
Nama                  :namapegawai (diinputkan)
Kehadiran           : jumlahharimasukdalam 1bulan(diinputkan)
Tunjangan                       :besarnya 200ribu (tidakdiinputkan)
UangMakan  :besarnya 6 ribu dikali jumlah kehadiran (tidakdiinputkan)
Gaji                     :besarnya gaji pokok yang diterima tiap bulan (diinputkan)

Method-method yangharusada :
hitungGaji() :untuk menghitung gaji bersih pegawai, dimana untuk pegawai kontrak = UangMakan + Gaji, pegawai tetap = Tunjangan + Uang Makan +Gaji
̇ lihatData():untuk menampilkan data-data pegawai secara lengkap beserta total gaji yang diterima (gajibersih)

Dari kedua class diatas,analisa dan desainlah super class yang tepat untuk kasus tersebut.

Setelah itu buatlah class utama yaitu class PegawaiMajuMundur
(yang menggunakan class-class diatas) yang memilikimenu utamasebagaiberikut:

MENU UTAMA
1. Input DataPegawai
2. LihatDataPegawai
3. Keluar
PilihanAnda[1/2/3] ? ...

Tentukanpula modifier yang tepatuntuksemua class diatas(termasuksuperclass-nya, manaygfinal class danmana yang abstract class). Andadapatmenggunakanteknik polymorphism dalammenyelesaikanpermasalahanini.

jawaban:
SINTAK PEGAWAIMANJU MUNDUR:
public class PegawaiMajuMundur

Kamis, 22 November 2012

JAVA

 sintak program java tentang interface

interface intlampu{
public static final int KEADAAN_HIDUP = 1;
public static final int KEADAAN_MATI = 0;
public abstract void hidupkan();
public abstract void matikan();
}
interface intlampupenyuram extends intlampu{
public static final int POSISI_MAKSIMUM = 10;
public static final int POSISI_MINIMUM = 0;
public abstract void redupkan();

public abstract void buatlebihterang();
}
class lampupenyuram implements intlampupenyuram {
private int statuslampu = 0;
public void hidupkan() {
this.statuslampu = POSISI_MAKSIMUM;
System.out.print("hidupkan(): ");
System.out.print("lampu hidup. ");
System.out.println("posisi tombol : "+this.statuslampu);
}
public void matikan() {
this.statuslampu = POSISI_MINIMUM;
System.out.print("matikan(): ");
System.out.println("lampu mati. ");
}
public void redupkan() {
if (this.statuslampu != POSISI_MINIMUM)
this.statuslampu--;
System.out.print("redupkan(): ");
if (this.statuslampu == POSISI_MINIMUM)
System.out.println("lampu mati: ");
else{
System.out.print("lampu hidup: ");
System.out.println("posisi tombol: "+this.statuslampu);
}
}
public void buatlebihterang() {
if (this.statuslampu != POSISI_MAKSIMUM)
this.statuslampu++;
System.out.print("buatlebihterang() ");
System.out.print("lampu hidup: ");
System.out.println("posisi tombol : "+this.statuslampu);
}
}
public class tesinterface {
public static void main(String[] args) {
lampupenyuram lampukamar = new lampupenyuram();
lampukamar.hidupkan();
lampukamar.redupkan();
lampukamar.buatlebihterang();
lampukamar.matikan();
lampukamar.buatlebihterang();
}
}
setelah di eksekusi maka hasilnya sebagai berikut:
--------------------Configuration: <Default>--------------------
hidupkan(): lampu hidup. posisi tombol : 10
redupkan(): lampu hidup: posisi tombol: 9
buatlebihterang() lampu hidup: posisi tombol : 10
matikan(): lampu mati.
buatlebihterang() lampu hidup: posisi tombol : 1

Process completed.