Bài tập C++: Bài tập tính kế thừa tiếp Bài tập Viết chương trình C++ để hiển thị chi tiết bảng lương của nhân viên.. Chương trình của bạn sẽ nhắc người dùng nhập số thứ tự nhân viên, i
Trang 1Bài tập C++: Bài tập tính kế thừa (tiếp)
Bài tập
Viết chương trình C++ để hiển thị chi tiết bảng lương của nhân viên Chương trình của bạn
sẽ nhắc người dùng nhập số thứ tự nhân viên, id, tên, chức danh, lương cơ bản, phụ cấp
thu hút, phụ cấp chức vụ, phụ cấp trách nhiệm, sau đó tính tổng lương và hiển thị kết quả
Lời giải
Dưới đây là chương trình C++ để giải bài tập trên Để giải bài này, mình sử dụng tính kế
thừa trong C++
• Đầu tiên, khai báo một lớp cơ sở nhanvien, định nghĩa hàm get() để lấy chi tiết về
nhân viên
• Khai báo lớp kế thừa luong, sau đó khai báo hàm get1() để lấy chi tiết về lương
nhân viên
• Kế tiếp, bạn định nghĩa hàm calculate() để tìm tổng lương và định nghĩa hàm
display()
• Tạo đối tượng của lớp kế thừa, đọc số nhân viên
• Sau đó gọi hàm get(), get1() và calculate() cho mỗi nhân viên và cuối cùng gọi hàm
display()
#include<iostream> #include<conio.h> using namespace std; class nhanvien {
public: int idnhanvien; char tennhanvien[20],chucdanh[20]; void get() { cout<<"Nhap id cua nhan vien: ";
cin>>idnhanvien; cout<<"Nhap ten nhan vien: ";
cin>>tennhanvien; cout<<"Nhap chuc danh cua nhan vien: ";
cin>>chucdanh; } }; class luong:public nhanvien { float lcoban,pthuhut,pchucvu,ptrachnhiem,lrong; public: void get1() {
cout<<"Nhap luong co ban: "; cin>>lcoban;
cout<<"Nhap phu cap thu hut: "; cin>>pthuhut;
cout<<"Nhap phu cap chuc vu: "; cin>>pchucvu;
cout<<"Nhap phu cap trach nhiem: "; cin>>ptrachnhiem; }
void calculate() { lrong=lcoban+pthuhut+pchucvu+ptrachnhiem;
} void display() {
cout<<idnhanvien<<"\t"<<tennhanvien<<"\t"<<chucdanh<<"\t"<<lcoban<<"\t"<<pthuhu t<<"\t"<<pchucvu<<"\t"<<ptrachnhiem<<"\t"<<lrong<<"\n"; } }; int main() { int i, ; char ch; luong s[10]; cout<<"Nhap so nhan vien: " cin>>n for( = ; < ; ++) { s[ ].get();
Trang 2s i].get1(); s[ ].calculate(); } cout<<"\nid \tten
\tchucdanh \tlcoban \tpthhut \tpchvu \tptnhiem \tlrong \n";
for( = ; < ; ++) { s[ ].display(); } return ; }
Chạy chương trình C++ trên sẽ cho kết quả như hình sau: