Как сделать функцию друга для этого кода? - PullRequest
0 голосов
/ 03 мая 2020

Я хочу, чтобы функция друга отображала сотрудника, которому платят больше всего из трех сотрудников. Я не уверен, как go об этом. Мой код уже работает, просто хочу добавить к нему. Каким был бы код, чтобы сделать это и почему он работает ?? Я смотрел на примеры других работ, но они не имеют смысла для меня. Я надеюсь, что вы можете помочь. Спасибо!

#include <iostream>
using namespace std;

double Pay(double rate, double hours);

struct StaffInfo {
    int Staff_ID;
    double Hourly_Rate;
    double Weekly_Hours;
    int Dep_Num;
    double Paid;
    int Birth_Year;
};

int main()
{
    // # of Staff members
    StaffInfo staff[3];

    // For loop to get user input for the 3 staff members
    for (int i = 0; i < 3; i++) {

        cout << "Staff ID: ";
        cin >> staff[i].Staff_ID;
        cout << "Hourly Rate: ";
        cin >> staff[i].Hourly_Rate;
        cout << "Hours worked: ";
        cin >> staff[i].Weekly_Hours;
        cout << "Department Number: ";
        cin >> staff[i].Dep_Num;
        cout << "Birth Year: ";
        cin >> staff[i].Birth_Year;
        cout << endl;
        //Calls Pay function
        staff[i].Paid = Pay(staff[i].Hourly_Rate, staff[i].Weekly_Hours);
    }
    //Prints Staff# and how much they got paid
    for (int i = 0; i < 3; i++) {
        cout << endl << "Staff #:" << staff[i].Staff_ID << " pay is: $" << staff[i].Paid << endl;
    }
}

// Determine how much staff member gets paid
double Pay(double rate, double hours)
{
    double PayCheck = 0;

    //Determines if they worked overtime or not
    if (hours >= 40.00)
    {
        //Overtime pay rate
        PayCheck = ((rate * 1.5) * hours);
    }
    else if (hours < 40.00)
    {
        //No Overtime
        PayCheck = (rate * hours);
    }
    return PayCheck;
}
...