Tugas Praktikum ke-6 ini masih melanjutkan praktikum ke-5 yang sudah anda buat.
Pada Tugas Praktikum ke-6 ini anda diminta untuk menambah kemampuan dari program praktikum ke-5, yaitu dapat menampilkan :
- gaji tetap
- gaji per jam
- jumlah jam lembur
- gaji lembur
- gaji total
dari setiap pegawai yang ada.
Anda dapat melihat Running program dari tugas praktikum ke-6 ini (tugas_prak06.exe, lihat Contoh Tugas Praktikum ke-6) sebagai pedoman, tugas anda tidak harus sama dengan contoh yang saya berikan.
Tugas dikerjakan selama 1 minggu.
Source Code :
import java.util.Scanner;
//class Prak06_11520241015
public class Prak06_11520241015 {
public static void main (String args[]){
System.out.println("");
System.out.println("== SELAMAT DATANG DI DATA KARYAWAN ==");
//input data
Scanner masuk = new Scanner(System.in);
int menu,gol,jamker;
Karyawan2 array=new Karyawan2();
do{
System.out.println("\n_____ M E N U _____");
System.out.println(" 1.Masukkan Data");
System.out.println(" 2.Mencari Data");
System.out.println(" 3.Lihat Data");
System.out.println(" 4.Lihat Gaji");
System.out.println(" 5.Hapus Data");
System.out.println(" 6.Keluar");
System.out.println("");
System.out.print("Pilihan Anda = ");
menu=masuk.nextInt();
System.out.println("");
switch(menu){
case 1 : {
array.masukkan();
break;
}
case 2 : {
array.mencari();
break;
}
case 3 :{
array.lihat();
break;
}
case 4 :{
array.tampilgaji();
break;
}
case 5 :{
array.hapus();
break;
}
}
}while (menu>0 && menu<5 nbsp="" p=""> System.out.println("******* TERIMAKASIH *******\n");
}
}
//class Karyawan
class Karyawan2{
int a;
String nama[];
int gol[];
int jamker[];
public static int gajipenuh = 0;
public static int gajiperjam= 0;
public static int jamlembur=0;
public static int gajilembur=0;
public static int total=0,jam=0,golo=0;
static String nama2;
int f=0;
//method procedure masukkan
public void masukkan(){
//meminta jumlah input-an
Scanner gaji=new Scanner(System.in);
System.out.println("***********************************");
System.out.print("Mau masukkan berapa data ? ");
a=gaji.nextInt();
System.out.println("***********************************");
nama=new String[a];
gol=new int[a];
jamker=new int[a];
//memasukkan data karyawan
for(a=0;a System.out.println("\n=================================");
System.out.println(" Data Karyawan ke "+(a+1)+" ");
Scanner input=new Scanner(System.in);
System.out.println("=================================");
System.out.print("1. Nama Karyawan = ");
nama[a]=input.nextLine();
System.out.print("2. Golongan Karyawan = ");
gol[a]=input.nextInt();
System.out.print("3. Jumlah Jam Kerja = ");
jamker[a]=input.nextInt();
System.out.println("\n\n");
}
}
//method procedure mencari data karyawan
public void mencari(){
int y;
//memasukkan nama karyawan yg dicari
Scanner cari=new Scanner(System.in);
System.out.println("========================================");
System.out.println("| Mencari Data Karyawan |");
System.out.println("========================================");
System.out.print("Ketikkan Nama Karyawan yang Dicari : ");
String cariyuk = cari.nextLine();
//jika data yg dicari berupa integer
if(a == 0){
System.out.println("\n\nMaaf. Data yang Anda Cari Tidak Ditemukan ");
System.out.println("");
}
//jika data yg dicari berupa string
else{
boolean i = true;
for(y=0;y
//menampilkan data yg ditemukan
if(nama[y].equals(cariyuk)){
System.out.println("\n\n========================================");
System.out.println("| Data yang Anda Cari |");
System.out.println("========================================");
tampil(y);
i = false;
break;
}
}
//menampilkan data yg tidak ditemukan
if (i){
System.out.println("\n\nMaaf. Data yang Anda Cari Tidak Ditemukan");
}
}
}
//method procedure menampilkan data karyawan pada menu mencari data
public void tampil(int karyawan2){
System.out.println("Nama Pegawai : "+nama[karyawan2]);
System.out.println("Golongan Pegawai : "+gol[karyawan2]);
System.out.println("Jam Kerja Pegawai: "+jamker[karyawan2]);
System.out.println("");
}
//method procedure menampilkan data karyawan pada menu lihat data
public void lihat2(int karyawan2){
System.out.println("| "+nama[karyawan2]+" | "+gol[karyawan2]+ " | "+jamker[karyawan2]+" | ");
System.out.println("______________________________________________");
}
//method procedure menampilkan data karyawan pada menu lihat data
public void lihat(){
int z;
System.out.println("==============================================");
System.out.println("| D A T A K A R Y A W A N |");
System.out.println("==============================================");
System.out.println("| Nama Karyawan | Golongan | Jam Kerja |");
System.out.println("______________________________________________");
for(z=0; z lihat2(z); //memanggil method lihat
System.out.println("");
}
public void hapus(String cariNama, int nElemen) {
int v;
for (v=0; v if (f[v].ambilNama().compareTo(cariNama)==0) {
while(v f[v]=f[v+1];
v++;
}
nElemen--;
return f[v];
}
}
if (v==nElemen)
return null; /* jika indek hasil pencarian sama dengan jumlah data karyawan yang telah
dimasukkan, maka artinya data TIDAK DITEMUKAN */
else
return f[v]; /* jika indek hasil pencarian sama lebih kecil dari jumlah data karyawan yang
telah dimasukkan, maka artinya data DITEMUKAN */
}
//method menghitung gaji karyawan
public void gaji2(String name, int golongan, int waktu) { // constructor
nama2 = name;
golo = golongan;
jam = waktu;
//data golongan
if(golongan == 1){
gajipenuh= 500000; gajiperjam = 50000;
}
else if (golongan== 2){
gajipenuh = 300000; gajiperjam = 3000;
}
else if (golongan == 3){
gajipenuh= 250000; gajiperjam = 2000;
}
else if (golongan == 4){
gajipenuh = 100000; gajiperjam = 1500;
}
else if(golongan == 5){
gajipenuh = 50000; gajiperjam = 1000;
}
//menghitung jumlah jam kerja & gaji lembur
if (jam>150){
jamlembur= jam - 150;
gajilembur = (int) (jamlembur*1.5*gajiperjam);
}
total=gajipenuh+gajilembur;
}
// sub rutin (method) function
public int jamlembur() {
return jamlembur;
}
// sub rutin (method) function
public int gajilembur() {
return gajilembur;
}
// sub rutin (method) function
public int total() {
return total;
}
// method untuk menampilkan class data1
public void tampilgaji() {
System.out.println("========================================");
System.out.println("| Gaji Karyawan |");
System.out.println("========================================");
System.out.println("Nama karyawan :" +nama2);
System.out.println("Gaji Tetap :" +gajipenuh);
System.out.println("Gaji per jam :" +gajiperjam);
System.out.println("Jumlah Jam Kerja :" +jam);
System.out.println("Jumlah Jam Lembur :" +jamlembur);
System.out.println("Jumlah Gaji Lembur :" +gajilembur);
System.out.println("Total gaji :" +total);
System.out.println(" " );
}
}
5>
//class Prak06_11520241015
public class Prak06_11520241015 {
public static void main (String args[]){
System.out.println("");
System.out.println("== SELAMAT DATANG DI DATA KARYAWAN ==");
//input data
Scanner masuk = new Scanner(System.in);
int menu,gol,jamker;
Karyawan2 array=new Karyawan2();
do{
System.out.println("\n_____ M E N U _____");
System.out.println(" 1.Masukkan Data");
System.out.println(" 2.Mencari Data");
System.out.println(" 3.Lihat Data");
System.out.println(" 4.Lihat Gaji");
System.out.println(" 5.Hapus Data");
System.out.println(" 6.Keluar");
System.out.println("");
System.out.print("Pilihan Anda = ");
menu=masuk.nextInt();
System.out.println("");
switch(menu){
case 1 : {
array.masukkan();
break;
}
case 2 : {
array.mencari();
break;
}
case 3 :{
array.lihat();
break;
}
case 4 :{
array.tampilgaji();
break;
}
case 5 :{
array.hapus();
break;
}
}
}while (menu>0 && menu<5 nbsp="" p=""> System.out.println("******* TERIMAKASIH *******\n");
}
}
//class Karyawan
class Karyawan2{
int a;
String nama[];
int gol[];
int jamker[];
public static int gajipenuh = 0;
public static int gajiperjam= 0;
public static int jamlembur=0;
public static int gajilembur=0;
public static int total=0,jam=0,golo=0;
static String nama2;
int f=0;
//method procedure masukkan
public void masukkan(){
//meminta jumlah input-an
Scanner gaji=new Scanner(System.in);
System.out.println("***********************************");
System.out.print("Mau masukkan berapa data ? ");
a=gaji.nextInt();
System.out.println("***********************************");
nama=new String[a];
gol=new int[a];
jamker=new int[a];
//memasukkan data karyawan
for(a=0;a
System.out.println(" Data Karyawan ke "+(a+1)+" ");
Scanner input=new Scanner(System.in);
System.out.println("=================================");
System.out.print("1. Nama Karyawan = ");
nama[a]=input.nextLine();
System.out.print("2. Golongan Karyawan = ");
gol[a]=input.nextInt();
System.out.print("3. Jumlah Jam Kerja = ");
jamker[a]=input.nextInt();
System.out.println("\n\n");
}
}
//method procedure mencari data karyawan
public void mencari(){
int y;
//memasukkan nama karyawan yg dicari
Scanner cari=new Scanner(System.in);
System.out.println("========================================");
System.out.println("| Mencari Data Karyawan |");
System.out.println("========================================");
System.out.print("Ketikkan Nama Karyawan yang Dicari : ");
String cariyuk = cari.nextLine();
//jika data yg dicari berupa integer
if(a == 0){
System.out.println("\n\nMaaf. Data yang Anda Cari Tidak Ditemukan ");
System.out.println("");
}
//jika data yg dicari berupa string
else{
boolean i = true;
for(y=0;y
//menampilkan data yg ditemukan
if(nama[y].equals(cariyuk)){
System.out.println("\n\n========================================");
System.out.println("| Data yang Anda Cari |");
System.out.println("========================================");
tampil(y);
i = false;
break;
}
}
//menampilkan data yg tidak ditemukan
if (i){
System.out.println("\n\nMaaf. Data yang Anda Cari Tidak Ditemukan");
}
}
}
//method procedure menampilkan data karyawan pada menu mencari data
public void tampil(int karyawan2){
System.out.println("Nama Pegawai : "+nama[karyawan2]);
System.out.println("Golongan Pegawai : "+gol[karyawan2]);
System.out.println("Jam Kerja Pegawai: "+jamker[karyawan2]);
System.out.println("");
}
//method procedure menampilkan data karyawan pada menu lihat data
public void lihat2(int karyawan2){
System.out.println("| "+nama[karyawan2]+" | "+gol[karyawan2]+ " | "+jamker[karyawan2]+" | ");
System.out.println("______________________________________________");
}
//method procedure menampilkan data karyawan pada menu lihat data
public void lihat(){
int z;
System.out.println("==============================================");
System.out.println("| D A T A K A R Y A W A N |");
System.out.println("==============================================");
System.out.println("| Nama Karyawan | Golongan | Jam Kerja |");
System.out.println("______________________________________________");
for(z=0; z lihat2(z); //memanggil method lihat
System.out.println("");
}
public void hapus(String cariNama, int nElemen) {
int v;
for (v=0; v
while(v
v++;
}
nElemen--;
return f[v];
}
}
if (v==nElemen)
return null; /* jika indek hasil pencarian sama dengan jumlah data karyawan yang telah
dimasukkan, maka artinya data TIDAK DITEMUKAN */
else
return f[v]; /* jika indek hasil pencarian sama lebih kecil dari jumlah data karyawan yang
telah dimasukkan, maka artinya data DITEMUKAN */
}
//method menghitung gaji karyawan
public void gaji2(String name, int golongan, int waktu) { // constructor
nama2 = name;
golo = golongan;
jam = waktu;
//data golongan
if(golongan == 1){
gajipenuh= 500000; gajiperjam = 50000;
}
else if (golongan== 2){
gajipenuh = 300000; gajiperjam = 3000;
}
else if (golongan == 3){
gajipenuh= 250000; gajiperjam = 2000;
}
else if (golongan == 4){
gajipenuh = 100000; gajiperjam = 1500;
}
else if(golongan == 5){
gajipenuh = 50000; gajiperjam = 1000;
}
//menghitung jumlah jam kerja & gaji lembur
if (jam>150){
jamlembur= jam - 150;
gajilembur = (int) (jamlembur*1.5*gajiperjam);
}
total=gajipenuh+gajilembur;
}
// sub rutin (method) function
public int jamlembur() {
return jamlembur;
}
// sub rutin (method) function
public int gajilembur() {
return gajilembur;
}
// sub rutin (method) function
public int total() {
return total;
}
// method untuk menampilkan class data1
public void tampilgaji() {
System.out.println("========================================");
System.out.println("| Gaji Karyawan |");
System.out.println("========================================");
System.out.println("Nama karyawan :" +nama2);
System.out.println("Gaji Tetap :" +gajipenuh);
System.out.println("Gaji per jam :" +gajiperjam);
System.out.println("Jumlah Jam Kerja :" +jam);
System.out.println("Jumlah Jam Lembur :" +jamlembur);
System.out.println("Jumlah Gaji Lembur :" +gajilembur);
System.out.println("Total gaji :" +total);
System.out.println(" " );
}
}
0 terbaik