Berikut adalah contoh soal tugas algoritma pemrograman bahasa C++
Soal!
PT.DINGIN DAMAI memberi gaji pokok kepada karyawan kontraknya sebesar Rp.300.000 perbulan, dengan memperoleh tunjangan-tunjangan sebagai berikut:
>Tunjangan Jabatan:
Golongan | Persentase |
1 | 5% |
2 | 10% |
3 | 15% |
>Tunjangan Pendidikan:
Tingkat Pendidikan | Persentase |
SMA | 2.5% |
D1 | 5% |
D3 | 20% |
S1 | 30% |
>Honor Lembur:
Jumlah jam kerja normal sebanyak 8 jam, honor lembur diberikan jika jumlah jam kerja lebih dari 8 jam. Kelebihan jam kerja tersebut dikalikan dengan Rp3500,-(jjk>8, maka jjk -8=n, n x Rp.3500,-).
>Tampilan yang diinginkan sebagai berikut:
PROGRAM HITUNG GAJI KARYAWAN
PT.DINGIN DAMAI
Nama karyawan :input
Golongan jabatan :input
Pendidikan :input
Jumlah jam kerja :input
Karyawan yang bernama output
Honor yang diterima
Tunjangan jabatan Rp. Output
Tunjangan pendidikan Rp. Output
Honor lembur Rp. Output
Gaji Pokok Rp. Output
Gaji Pokok Rp. Output
__________________+
Gaji Rp. Output
Penyelesaian:
/*latihan penghitungan gaji karyawan*/
/*PT.DINGIN DAMAI*/
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
e()
{
cout<<"==============================================="<<endl;
}
main()
{
char nama[23],pendidikan[12];
long int jjk,tj,tp,honor,gaji,gp,jk,gol;
gp=300000;
jk=8;
cout<<" PROGRAM HITUNG GAJI KARYAWAN"<<endl;
cout<<" PT.DINGIN DAMAI"<<endl;
e();
cout<<"Nama Karyawan :";cin>>nama;
cout<<"Jml.Jam Kerja :";cin>>jjk;
cout<<"Pendidikan :";cin>>pendidikan;
if(strcmpi(pendidikan,"SMA")==0)
{
tp=0.025*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}else
if(strcmpi(pendidikan,"D1")==0)
{
tp=0.05*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}else
if(strcmpi(pendidikan,"D3")==0)
{
tp=0.2*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}else
if(strcmpi(pendidikan,"S1")==0)
{
tp=0.3*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}
e();
cout<<"Karyawan yang bernama "<<nama<<endl;
cout<<"Honor yang diterima"<<endl;
cout<<" Tunjangan Jabatan Rp"<<tj<<endl;
cout<<" Tunjangan Pendidikan Rp"<<tp<<endl;
cout<<" Gaji Pokok Rp"<<gp<<endl;
if(jjk>8)
{
honor=(jjk-8)*3500;
}else
{
honor=0;
}
cout<<" Honor Lembur Rp"<<honor<<endl;
cout<<" ____________________+"<<endl;
gaji=tj+tp+honor+gp;
cout<<" Gaji Rp"<<gaji<<endl;
getch();
}
/*PT.DINGIN DAMAI*/
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
e()
{
cout<<"==============================================="<<endl;
}
main()
{
char nama[23],pendidikan[12];
long int jjk,tj,tp,honor,gaji,gp,jk,gol;
gp=300000;
jk=8;
cout<<" PROGRAM HITUNG GAJI KARYAWAN"<<endl;
cout<<" PT.DINGIN DAMAI"<<endl;
e();
cout<<"Nama Karyawan :";cin>>nama;
cout<<"Jml.Jam Kerja :";cin>>jjk;
cout<<"Pendidikan :";cin>>pendidikan;
if(strcmpi(pendidikan,"SMA")==0)
{
tp=0.025*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}else
if(strcmpi(pendidikan,"D1")==0)
{
tp=0.05*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}else
if(strcmpi(pendidikan,"D3")==0)
{
tp=0.2*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}else
if(strcmpi(pendidikan,"S1")==0)
{
tp=0.3*gp;
cout<<"Golongan :";cin>>gol;
if(gol==1)
{
tj=0.05*gp;
}else
if(gol==2)
{
tj=0.1*gp;
}else
if(gol==3)
{
tj=0.15*gp;
}
}
e();
cout<<"Karyawan yang bernama "<<nama<<endl;
cout<<"Honor yang diterima"<<endl;
cout<<" Tunjangan Jabatan Rp"<<tj<<endl;
cout<<" Tunjangan Pendidikan Rp"<<tp<<endl;
cout<<" Gaji Pokok Rp"<<gp<<endl;
if(jjk>8)
{
honor=(jjk-8)*3500;
}else
{
honor=0;
}
cout<<" Honor Lembur Rp"<<honor<<endl;
cout<<" ____________________+"<<endl;
gaji=tj+tp+honor+gp;
cout<<" Gaji Rp"<<gaji<<endl;
getch();
}