Program Data Pegawai dengan Bahasa C++

#include <iostream>
using namespace std;

struct Karyawan{
int jamkerja, gaji;
string nik, nama, jkel;
}krywan[500];

void BacaData(int N, Karyawan krywan[]){
int i;
for (i=0; i<N; i++){
cout<<"Masukkan NIK : ";cin>>krywan[i].nik;
cout<<"Masukkan Nama : ";cin>>krywan[i].nama;
cout<<"Masukkan Jenis Kelamin : ";cin>>krywan[i].jkel;
cout<<"Masukkan Jam Kerja: ";cin>>krywan[i].jamkerja;

cout<<endl;
}
}

void HitungGaji(int N, Karyawan krywan[]){
int i, gajipokok, gajilembur;
gajipokok=1000000;
gajilembur=25000;
for (i=0; i<N; i++){
if(krywan[i].jamkerja > 48){
krywan[i].gaji=gajipokok+((krywan[i].jamkerja-48)*gajilembur);
}
else{
krywan[i].gaji=gajipokok;
}
}
}

void TampilDataPegawai(int N){
int i;
cout<<"No\t"<<"NIK\t"<<"Nama\t\t"<<"JK\t"<<"Jam Kerja\t"<<"Gaji\t"<<endl;
for(i=0;i<N;i++){
cout<<i+1<<"\t"<<krywan[i].nik<<"\t"<<krywan[i].nama<<"\t\t"<<krywan[i].jkel<<"\t";
cout<<krywan[i].jamkerja<<"\t\t"<<krywan[i].gaji<<"\t"<<endl;
}
cout<<endl;
}

int MaxJamKerja(int N, Karyawan krywan[]){
int i,max;
max = -1;
for(i=0; i<N; i++){
if(krywan[i].jamkerja>max){
max=krywan[i].jamkerja;
}
}
return(max);
}

int MinJamKerja(int N, Karyawan krywan[]){
int i,min;
min = 999;
for(i=0; i<N; i++){
if(krywan[i].jamkerja<min){
min=krywan[i].jamkerja;
}
}
return(min);
}

float Rata(int N, Karyawan krywan[]){
int i;
float jum;
jum = 0;
for(i=0; i<N; i++){
jum = jum + krywan[i].jamkerja;
}
return(jum/N);
}

int karyawanlembur(int N, Karyawan krywan[]){
int i,total;
total=0;
for(i=0;i<N;i++){
if(krywan[i].jamkerja>48){
total=total+1;
}
}
return(total);
}

int jamkrjnormal(int N, Karyawan krywan[]){
int i,total;
total=0;
for(i=0;i<N;i++){
if(krywan[i].jamkerja==48){
total=total+1;
}
}
return(total);
}

void CariKaryawan(int N, Karyawan krywan[], string namaygdicari){
int i;
bool ketemu;

i=1;
ketemu = false;

while ((i<=N) && (not ketemu)){
if(krywan[i].nama == namaygdicari)
ketemu = true;
else
i=i+1;
}
if (ketemu)
cout<<"Data ditemukan";
else
cout<<"Data tidak ditemukan";
cout<<endl;
}

int main() {
int N, Max, Min, Lembur, Normal;
string namaygdicari;
float Rata_Rata;

cout<<"       PROGRAM GAJI PEGAWAI       "<<endl;
cout<<"          INDRI AGUSTINA          "<<endl;
cout<<"dibuat dengan JUJUR tgl 29 Mei 2015"<<endl<<endl;

cout<<"Masukkan Banyak Data Karyawan : ";cin>>N;
cout<<endl;

BacaData(N, krywan);
HitungGaji(N, krywan);
TampilDataPegawai(N);

Max = MaxJamKerja(N,krywan);
cout<<"Jam Kerja Terbanyak = "<<Max<<endl;

Min = MinJamKerja(N,krywan);
cout<<"Jam Kerja Terendah = "<<Min<<endl;

Rata_Rata=Rata(N,krywan);
cout<<"Rata-rata Jam Kerja = "<<Rata_Rata<<endl;

Lembur = karyawanlembur(N,krywan);
cout<<"Banyaknya Karyawan yang Lembur = "<<Lembur<<endl;

Normal = jamkrjnormal(N,krywan);
cout<<"Banyaknya Karyawan yang Jam Kerjanya 48 jam = "<<Normal<<endl;

cout<<"Masukkan nama yang dicari : ";cin>>namaygdicari;
CariKaryawan(N, krywan, namaygdicari);

return 0;
}

Komentar

Postingan populer dari blog ini

Cara Membuat Halaman Login Hotspot Berbeda pada 1 Mikrotik

UltraISO Premium Edition v9.5.3

Arti OSAKMJ