Untitled

 avatar
unknown
plain_text
2 years ago
1.2 kB
3
Indexable
#include <string>
#include <iostream>
using namespace std;

struct Employee
{
    string name;
    int accessLevel;
    double salary;
    int contractDuration;
};

int main()
{
    int N;
    N = 3;
    Employee* employees = new Employee[N];
    employees[0] = { "John", 10, 5000, 12 };
    employees[1] = { "Anna", 8, 4000, 6};
    employees[2] = { "Peter", 6, 3000, 3 };

    int maxAccessLevel = 0;
    double maxSalary = 0.0;
    string maxName;
    int counter = 0;
    for (int i = 0; i < N; i++) {
        if (employees[i].accessLevel > maxAccessLevel) {
            maxAccessLevel = employees[i].accessLevel;
            maxName = employees[i].name;
            maxSalary = employees[i].salary;
        }
        else if (employees[i].accessLevel == maxAccessLevel) {
            counter++;
        }
    }
    if (counter > 0) {
        maxSalary = 0;
        for (int i = 0; i < N; i++) {
            if (employees[i].salary > maxSalary) {
                maxName = employees[i].name;
            }
        }
    }
    cout << "Employee with maximum access level or maximum salary: " << maxName << endl;
}
Editor is loading...