//* وفكرة البرنامج عباره عن حساب راتب الموظفين الشهري بحيث يتم ادخال ايام الغياب وساعات التأخير وبعد ذلك يتم خصمها من راتب الموظف وعرضها في جدول*//
# include <iostream>
# include <iomanip>
# include <cmath>
# include <string>
using namespace std;
int y,e;
//كلاس تم تعريف المتغيرات داخله ووضع الفنكشن في البابلك
class employee
{
private:
int Numabsence,Numdelay,salary,y;
public:
//يوجد مشكله في تعريف الواي الموجوده في البروتوتايب المعرفه لعمود المصفوفه
//فانكشن لحساب ايام الغياب
int absenc(int a[][y],int Numabsence);
//فانكشن لحساب ساعات التاخير
int delay(int a[][y],int Numdelay);
//فانكشن لحساب الراتب بعد عملية الخصم
int salry (int a[][y],int salary);
//فانكشن لطباعة الجدول
void print (int a[][y]);
};
void main()
{
employee obj1;
//*عرفنا مصفوفه وتم فيها وضع بيانات الموظفين ولكن هناك مشكله في كيفية تعريف المصفوفه حيث انها تحتو على سترنق+انتجر*//
//(ACCOUNT,NAME,RANK,APSENCE,DELAY,SALARY)
int emp[19][5]={{1,"Ahmed Abdullah",2,0,0,10000},{2,"Nasser Ahmed",1,0,0,8000},{3,"Emad Abdualrahman",2,0,0,10000},{4,"Ibrahim Mohammed",3,0,0,12000},{5,"Anass Khaleel",3,0,0,12000},{6,"Monther Ibrahim",1,0,0,8000},{7,"Saleh Abdulaziz",3,0,0,12000},{8,"Ayman Hussain",2,0,0,10000},{9,"Khaled Youssif",2,0,0,10000},{10,"Abdulaziz Ahmed",2,0,0,10000},{11,"Fahad Abdullah",3,0,0,12000},{12,"Yasser Nasser",2,0,0,10000},{13,"Rayan Rakan",3,0,0,12000},{14,"Eyad Hussain",1,0,0,8000},{15,"Sami Rakan",3,0,0,12000},{16,"Waleed Khaled",3,0,0,12000},{17,"Hazem Ahmed",2,0,0,10000},{18, "Eyass Anass",1,0,0,8000},{19,"Asem Abdulrahman",1,0,0,8000},{20,"Nezar
Mohammed",3,0,0,12000"}};
int i,j,n,m;
cout<<"The Employers Data In The First Day Of The Month: "<<endl;
//نداء لفانكشن الطباعه لطباعة الجدول على الشاشه في بداية الشهر
obj1.print(emp);
//عباره عن لووب ليتم ادخال بيانات الموظفين من غياب وتأخير وذلك من قبل موظف شؤون الموظفين
while(i<20)
for (i=0;i<=19;i++)
{
for (j=0;j<=5;j++)
cout<<"Employer Name: "<<emp[1]<<endl;
cout<<"How many days of his absence this month?"<<endl;
cin>>n;
//نداء للفانكشن من الكلاس لحساب الغياب
obj1.absenc(emp,n);
cout<<"How many hours of delay?"<<endl;
cin>>m;
//نداء الفنكشن ممن الكلاس لحساب ساعات التاخير
opj1.delay(emp,m);
}
cout<<"The Employer Data At The Last Of The Month: "<<endl;
//نداء لعملية طباعة الجدول على الشاشه في آخر الشهر بعد حصر الغياب والتأخير وتحديد الراتب
opj1.print(emp);
}
//تعريف الفانكشن وحساب ايام الغياب
int employee ::absenc(int a[e][y],int Numabsence)
{
int i=e,sum=0;
sum=Numabsence+ a[3];
a[3]=sum;
return a[3];
}
//تعريف فانكشن حساب ساعات التأخير
int employee:: delay(int a[e][y],int Numdelay)
{
int i=e,sum=0;
sum=Numdelay+a[4];
a[4]=sum;
return a[4];
}
//حساب الراتب بعد الخصومات
int employee:: salry (int a[e][y],int salary)
{
int i,n,m,s,x,z;
a[3]=n;
a[4]=m;
x=n*500;
z=m*50;
s=x+z;
a[5]=a[5]-s;
return a[5];
}
//تعريف فانكشن الطباعه حيث يتم طباعة البيانات على شكل جدول
void employee::print(int a[e][y])
{
cout<<left<<setw(20)<<"ID"<<left<<setw(20)<<"Employer Name"<<left<<setw(20)<<"Rank"<<left<<setw(20)<<"Absence"<<left<<setw(8)<<"Delay"<<left<<setw(20)<<"Salary"<<endl;
int i,j;
for (i=0;i<=19;i++)
{
for(j=0;j<=5;j++)
cout<<left<<setw(20)<<a[j];
cout<<endl;
}
//يوجد أخطاء في البرنامج ومشاكل لم استطع التوصل لحلها، ارجو ممن يستطيع حلها لي ان يساعدني فيها شاكرة له ذلك،حيث اني مكلفه بتسليمه ولم استطع حل المشكله