Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <vector>
- #include <windows.h>
- class Worker {
- private:
- std::string fullName;
- std::string position;
- int startYear;
- double salary;
- public:
- explicit Worker(const std::string& fullName, const std::string& position, int startYear, double salary)
- : fullName(fullName), position(position), startYear(startYear), salary(salary) {}
- const std::string& getFullName() const {
- return fullName;
- }
- const std::string& getPosition() const {
- return position;
- }
- int getStartYear() const {
- return startYear;
- }
- double getSalary() const {
- return salary;
- }
- void display() const {
- std::cout << "Full Name: " << fullName << std::endl;
- std::cout << "Position: " << position << std::endl;
- std::cout << "Start Year: " << startYear << std::endl;
- std::cout << "Salary: " << salary << std::endl;
- std::cout << std::endl;
- }
- };
- int main() {
- SetConsoleCP(1251);
- SetConsoleOutputCP(1251);
- std::vector<Worker> workers;
- // Добавляем работников в массив
- workers.emplace_back("John Doe", "Manager", 2010, 5000);
- workers.emplace_back("Jane Smith", "Engineer", 2015, 4000);
- workers.emplace_back("Mark Johnson", "Accountant", 2012, 4500);
- workers.emplace_back("Emily Williams", "Developer", 2018, 5500);
- workers.emplace_back("Michael Brown", "Designer", 2013, 3800);
- // Список работников со стажем работы, превышающим заданное количество лет
- std::cout << "Список работников со стажем работы, превосходящим заданное количество лет:" << std::endl;
- int requiredExperience = 5;
- for (const auto& worker : workers) {
- int currentYear = 2023; // Текущий год
- int experience = currentYear - worker.getStartYear();
- if (experience > requiredExperience) {
- worker.display();
- }
- }
- // Список работников с зарплатой, превышающей заданную
- std::cout << "Список работников с зарплатой, превосходящей заданную:" << std::endl;
- double requiredSalary = 4500;
- for (const auto& worker : workers) {
- if (worker.getSalary() > requiredSalary) {
- worker.display();
- }
- }
- // Список работников, занимающих заданную должность
- std::cout << "Список работников, занимающих заданную должность:" << std::endl;
- std::string requiredPosition = "Engineer";
- for (const auto& worker : workers) {
- if (worker.getPosition() == requiredPosition) {
- worker.display();
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement