Возможно, есть и другие небольшие ошибки форматирования, которые мне нужно исправить, и т. Д., Но мне нужна помощь в том, что делать со следующим:ERROR "не может конвертировать 'float' в 'float ...' ..."
Lab8pt1.cpp: In function 'float Salary(float, float)':
Lab8pt1.cpp:48: error: assignment of function 'float Salary(float, float)'
Lab8pt1.cpp:48: error: cannot convert 'float' to 'float()(float, float)' in assignment
Lab8pt1.cpp:50: error: assignment of function 'float Salary(float, float)'
Lab8pt1.cpp:50: error: cannot convert 'double' to 'float()(float, float)' in assignment
Lab8pt1.cpp:51: error: cannot convert 'float (*)(float, float)' to 'float' in return
Я знаю, что имеет в виду моей функции заработной платы, но я не уверен, что проблема с моим поплавка. Предполагается, что это простое лабораторное задание, которое учит нас использованию функций (нам нужно написать код для функций, остальное нам было дано).
Помогите, пожалуйста! Заранее спасибо!
#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;
}
Посмотрите более внимательно на 'функции Salary'. Вы пытаетесь присвоить значение для возврата к фактической функции. –
Вы пришли из 'Pascal' в' C++ '? – Lol4t0