Buatlah sebuah program untuk menghitung gaji harian ! Diketahui gaji perjam = 1500, dan bila jumlah jam kerja lebih dari 8 jam, maka kelebihnya akan dianggap sebagai lembur dan gaji perjam lembur = 10 x gaji perjam.
#include<iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
int kata;
char val [100];
int validasi()
{
do
{
kata=0;
cin>>val;
for(int i=0; i<strlen(val); i++)
{
if(isdigit(val[i])==0)
kata++;
}
if(kata !=0)
cout<<"\t\tInput salah !\n"<<endl;
}
while(kata!=0);
return 0;
}
class pegawai {
public :
int nip;
char nama[30];
private:
int x;
public:
int b;
void assign(int a);
int waktunormal() {
return 8*1500;
}
int waktulembur() {
b=x-8;
return b*(10*1500);
}
};
//Prototipe fungtion
void pegawai::assign(int a)
{
x=a;
}
int main()
{
int jam, hasil;
pegawai pgw;
cout<<"Program untuk menghitung gaji harian";
cout<<"\n____________________________________\n";
cout<<"Masukkan nama : ";
cin.getline(pgw.nama,23);
cout<<"Masukkan nip : ";
validasi(); pgw.nip=atoi(val);
balik:
cout<<"Masukkan jumlah jam kerja : ";
validasi(); jam=atoi(val);
pgw.assign(jam);
if (jam==8)
hasil=pgw.waktunormal();
else if (jam>8)
hasil=pgw.waktulembur()+pgw.waktunormal();
else {
cout<<"Jumlah jam kerja minimal adalah 8 jam "<<endl;
goto balik;
}
cout<<"\n____________________________________\n";
cout<<"NIP : "<<pgw.nip<<endl;
cout<<"Nama : "<<pgw.nama<<endl;
cout<<"Jumlah jam kerja "<<jam<<" jam "<<endl;
cout<<"Total upah : "<<hasil;
return 0;
}


0 comments:
Post a Comment