Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ააგეთ კლასი Employee ველებით : name, surname, salary.
- 1) კლასს ჰქონდეს კონსტრუქტორი, რომელიც ფაილიდან წაიკითხავს
- მონაცემებს.
- 2) კლასს ჰქონდეს დესტრუქტორი
- 3) ჰქონდეს ფუნქცია რომელიც დათვლის წელიდაწში რამდენი ექნება ხელფასი.
- 4) დაწერეთ მეგობარი ფუნქცია,რომელიც დაბეჭდავს
- ამ ობიექტს შესაბამისი ინფორმაციული ტექსტებით.
- 5) ფაილ employee.txt -ში არის ინფორმაცია არაუმეტეს 500 თანამშრომლის შესახებ
- 6) main-ში შექმენით თანამშრომლების დინამიური მასივი.
- 7) მასივში დაალაგეთ თანამშრომლები ხელფასის მიხედვით. (ზრდით)
- 8) დაბეჭდეთ დალაგებული მასივის თითოეული ელემენტი კონსოლში
- 9) result.txt ფაილში ჩაწერეთ იმ თანამშრომლების ინფორმაცია,
- რომელთა ხელფასიც აღემატება 1000 ერთეულს
- */
- #include <string>
- #include <iostream>
- #include <fstream>
- #include <algorithm>
- using namespace std;
- class Employee{
- private:
- string name;
- string surname;
- double salary;
- public:
- Employee();
- Employee(ifstream& ifs);
- ~Employee();
- double yearSalary();
- friend void print(Employee& emp);
- string getName(){ return name; }
- void setName(string n){ name = n; }
- string getSurname(){ return surname; }
- void setSurname(string s){ surname = s; }
- double getSalary(){ return salary; }
- void setSalary(double s){ salary = s; }
- };
- Employee::Employee(){
- name = "";
- surname = "";
- salary = 0.0;
- }
- Employee::Employee(ifstream& ifs){
- ifs >> name >> surname >> salary;
- }
- double Employee::yearSalary(){
- return salary * 12;
- }
- void print(Employee& emp){
- cout << "Employee Name : " << emp.name << "\t";
- cout << "Employee Surname : " << emp.surname << "\t";
- cout << "Employee Salary : " << emp.salary << "\t";
- cout << "Employee Year Salary : " << emp.yearSalary() << endl;
- }
- Employee::~Employee(){
- cout << "Employee Deleted" <<endl;
- }
- bool compare(Employee emp1, Employee emp2){
- return emp1.getSalary() < emp2.getSalary();
- }
- void write(Employee& emp){
- static ofstream ofs("result.txt");
- ofs << "Employee Name : " << emp.getName() << "\t";
- ofs << "Employee Surname : " << emp.getSurname() << "\t";
- ofs << "Employee Salary : " << emp.getSalary() << "\t";
- ofs << "Employee Year Salary : " << emp.yearSalary() << endl;
- }
- int main(){
- Employee* employees = new Employee[500];
- ifstream ifs("employee.txt");
- int counter = 0;
- while (!ifs.eof())
- {
- Employee temp(ifs);
- employees[counter] = temp;
- counter++;
- }
- sort(employees, employees + counter, compare);
- for (int i = 0; i < counter; i++){
- print(employees[i]);
- if (employees[i].getSalary() > 1000){
- write(employees[i]);
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement