ОШИБКА «невозможно преобразовать 'float' в 'float…'…»

Возможно, здесь есть другие небольшие ошибки форматирования, которые мне нужно исправить, и т. д., но мне нужна помощь, что делать. со следующим:

Lab8pt1.cpp: В функции «Оклад с плавающей запятой (плавающая, плавающая)»:
Lab8pt1.cpp:48: ошибка: назначение функции «плавающая зарплата (плавающая, плавающая)»
Lab8pt1.cpp:48: ошибка: невозможно преобразовать 'float' в 'float ()(float, float)' в присваивании
Lab8pt1.cpp:50: ошибка: назначение функции «плавающая зарплата (плавающая, плавающая)»
Lab8pt1.cpp: 50: ошибка: невозможно преобразовать «двойное» в «плавающее () (плавающее, плавающее)» в присваивании
Lab8pt1.cpp:51: ошибка: невозможно преобразовать 'float (*)(float, float)' в 'float' в ответ

Я знаю, что это относится к моей функции "Зарплата", но я не уверен, в чем проблема с моим поплавок есть. Предполагается, что это простое лабораторное задание, которое учит нас, как использовать функции (нам нужно только написать код для функций, остальное нам дали).

Помогите, пожалуйста! Заранее спасибо!

#include <iostream>
#include <iomanip>
#include <string>

using namespace std ;

void Header(void) ;            
float Salary(float Hours, float Pay_Rate);  
void Print_it(float Hours,float Pay_Rate,float Sal, float Tax_Rate, string Name);  
void Read(float &hour, float &Pay_R,string &name) ;
bool Verify(float Hours, float Pay_Rate);  

int main ( void )
{
    float   Pay_Rate, Hours, Sal, Tax;
    const float  Tax_Rate= (float)0.09 ;
    string name;

    Header();
    for(int i = 0 ; i < 3 ; i++){
         Read(Hours,Pay_Rate,name);
         Sal = Salary(Hours,Pay_Rate);
         Print_it(Hours,Pay_Rate,Sal, Tax_Rate,name);    
    }
    cout<<"\n\n\n**********\t End of report \t*****\n\n\n\n";
    return 0 ;
}

void Header( void )
{
     string name;
     cout << "Welcome, " << name << ", to the Salary Calculator: a program that will calculate your salary.";
     return;
} 

float Salary(float Hours, float Pay_Rate)
{
     if( Hours <= 40 )
         Salary = Hours * Pay_Rate;
     else if( Hours > 40)
         Salary = Hours * (Pay_Rate * 1.5);
     return(Salary);
}

void Print_it(float Hours,float Pay_Rate,float Sal, float Tax_Rate, string Name)
{
     cout << fixed << setprecision(2);
     cout << "Name: " << left << setw(15) << Name << endl;
     cout << "Hours worked: " << left << setw(15) << Hours << endl;
     cout << "Pay rate: " << left << setw(15) << Pay_Rate << endl;
     cout << "Tax rate: " << left << setw(15) << Tax_Rate << endl;
     cout << "Salary: " << left << setw(15) << Sal << endl;
     return;
}

void Read(float &hour, float &Pay_R,string &name) 
{
     cout << "Please enter your name: ";
     getline(cin, name);
     cout << "Please enter number of hours worked: ";
     cin >> hour;
     cout << "Please enter your pay rate: ";
     cin >> Pay_R;
     return;
}

bool Verify(float Hours, float Pay_Rate)
{
     if( Hours < 0 || Hours > 60 || Pay_Rate < 0 || Pay_Rate > 500)
         return false;
     else
         return true;
}  
0
задан Kayti Lee-Sans 20 March 2012 в 08:32
поделиться