2个函数的平均值
Average of 2 functions
当我 运行 这段代码时,我似乎一直偏离平均水平,想知道是否有人有任何建议,我尝试了一个例子,就是让 5 名员工全部缺勤 5 天,并保持平均 15 ,我算错了吗?再次感谢您的帮助。我发布了完整的代码,以防万一它不是我试图让它尽可能整洁的功能,如果它在不到一个月的时间里有点乱,我很抱歉。
#include<iostream>
using namespace std;
function prototypes
//return type: void
//parameter type: 1 int by refrence
//purpose: This function asks the user for the number of employees in the company.
void GetNumEmployees(int&);
//return type: int
//parameter type: 1 int
//Purpose: The function should as the user to enter the number of days each employee missed during the past year
int TotalDaysMissed(int);
//return type: float
//parameters: 2 int
//Purpose: Returns the average of total number of days missed for all employees in the company during the year
float AverageDaysMissed(int, int);
int main()
{
//Declare and Initilize Variables
int empnum = 0, daysmissed = 0 ;
float averagedays = 0.0 ;
GetNumEmployees(empnum) ;
daysmissed = TotalDaysMissed(empnum) ;
averagedays = AverageDaysMissed(empnum, daysmissed) ;
cout<<"The Average Work Days your Employees Missed is "<<averagedays<<endl ;
return 0;
}
//function definitions
void GetNumEmployees(int &emp)
{
do
{
cout<<"Enter the number of Employees in the company: ";
cin>>emp ;
if(emp < 1)
cout<<"Invalid. Cannot be Less than 1\n\n";
}
while (emp < 1) ;
}
int TotalDaysMissed(int empn)
{
int daysmissed = 0 ;
int total = 0 ;
for(int n = empn; n > 0 ; n--)
{
do
{
cout<<"How Many days did Employee "<<n<< " miss? " ;
cin>>daysmissed ;
total += daysmissed;
if(daysmissed < 0)
cout<<"Invalid days must be a Positive Number\n\n";
}
while(daysmissed < 0) ;
}
return total;
}
float AverageDaysMissed(int empn, int daystotal)
{
float average = 0.0 ;
average = (empn + daystotal) / 2.0 ;
return average;
}
您计算的平均值不正确。
您有 5 名员工,每人缺勤 5 天。
(5 + 5 + 5 + 5 + 5) / 5 = 5
你的平均值是 5。
因此,如果您有 5 名员工按以下顺序缺勤:4、3、2、4、5。
那么你的平均值 = (4 + 3 + 2 + 4 +5) / 5 = 3.6
平均值是所有观察值的总和除以观察值的数量。
当我 运行 这段代码时,我似乎一直偏离平均水平,想知道是否有人有任何建议,我尝试了一个例子,就是让 5 名员工全部缺勤 5 天,并保持平均 15 ,我算错了吗?再次感谢您的帮助。我发布了完整的代码,以防万一它不是我试图让它尽可能整洁的功能,如果它在不到一个月的时间里有点乱,我很抱歉。
#include<iostream>
using namespace std;
function prototypes
//return type: void
//parameter type: 1 int by refrence
//purpose: This function asks the user for the number of employees in the company.
void GetNumEmployees(int&);
//return type: int
//parameter type: 1 int
//Purpose: The function should as the user to enter the number of days each employee missed during the past year
int TotalDaysMissed(int);
//return type: float
//parameters: 2 int
//Purpose: Returns the average of total number of days missed for all employees in the company during the year
float AverageDaysMissed(int, int);
int main()
{
//Declare and Initilize Variables
int empnum = 0, daysmissed = 0 ;
float averagedays = 0.0 ;
GetNumEmployees(empnum) ;
daysmissed = TotalDaysMissed(empnum) ;
averagedays = AverageDaysMissed(empnum, daysmissed) ;
cout<<"The Average Work Days your Employees Missed is "<<averagedays<<endl ;
return 0;
}
//function definitions
void GetNumEmployees(int &emp)
{
do
{
cout<<"Enter the number of Employees in the company: ";
cin>>emp ;
if(emp < 1)
cout<<"Invalid. Cannot be Less than 1\n\n";
}
while (emp < 1) ;
}
int TotalDaysMissed(int empn)
{
int daysmissed = 0 ;
int total = 0 ;
for(int n = empn; n > 0 ; n--)
{
do
{
cout<<"How Many days did Employee "<<n<< " miss? " ;
cin>>daysmissed ;
total += daysmissed;
if(daysmissed < 0)
cout<<"Invalid days must be a Positive Number\n\n";
}
while(daysmissed < 0) ;
}
return total;
}
float AverageDaysMissed(int empn, int daystotal)
{
float average = 0.0 ;
average = (empn + daystotal) / 2.0 ;
return average;
}
您计算的平均值不正确。
您有 5 名员工,每人缺勤 5 天。
(5 + 5 + 5 + 5 + 5) / 5 = 5
你的平均值是 5。
因此,如果您有 5 名员工按以下顺序缺勤:4、3、2、4、5。 那么你的平均值 = (4 + 3 + 2 + 4 +5) / 5 = 3.6
平均值是所有观察值的总和除以观察值的数量。