Reputation: 31
#include <iostream>
#include<iomanip>
using namespace std;
//prototypes
void getData(double base,double height);
void getData(double radiusa,double radiusb);
void printData(double rec_area,double elli_area);
void getData(double rpar1,double rpar2);
void printData(double vpar1,double vpar2);
//Declare variables
double base,height, radiusa, radiusb, rec_area, elli_area,rpar1, rpar2, vpar1,vpar2;
//Declare a global constant named PI equal to 3.141592;
const double PI = 3.141592;
int main()
{
//Print on the screen “For the rectangle”
cout << "For the rectangle" << endl;
//Call void function for base and height
getData(base, height);
//Print on the screen “For the ellipse”
cout << "For the ellipse" << endl;
//Call void function for lengths
getData(radiusa, radiusb);
//Calculate the area and store the result for rectangle
rec_area = base * height;
//Calculate the area and store the result for ellipse
elli_area = PI * radiusa * radiusb;
//Call void function that receives the two areas and returns them
printData(rec_area, elli_area);
//Get both values from the keyboard and store them in rpar1 and rpar2.
getData(rpar1, rpar2);
//Format to use fixed point
printData(vpar1, vpar2);
return 0;
}
//call functions
void getData(base, height)
{
return;
}
void getData(radiusa, radiusb)
{
return;
}
void printData(rec_area, elli_area)
{
cout << "The area of the rectangle is " << rec_area << endl << endl;
cout << "The area of the ellipse is " << elli_area << endl << endl;
return;
}
void getData(rpar1, rpar2)
{
return;
}
void printData(vpar1, vpar2)
{
cout << "Please enter two lenghts: " << endl << endl;
cout << fixed << showpoint << setprecision (1);
return;
}
I have been messing with the code here and there so if it looks ugly I'm sorry. Also I'm a noob. Here are the errors:
error C2448: 'getData' : function-style initializer appears to be a function definition
error C2448: 'getData' : function-style initializer appears to be a function definition
error C2448: 'printData' : function-style initializer appears to be a function definition
error C2448: 'getData' : function-style initializer appears to be a function definition
error C2448: 'printData' : function-style initializer appears to be a function definition
Upvotes: 0
Views: 148
Reputation: 802
First of all, writing a function declaration above main is a good technique to write functions.
The errors you see in your code are because when you write the actual body of the functions, you need to specify the type of the parameters again. Your code for the functions should be
//declare functions
void getData(double base, double height);
void getData2(double radiusa, double radiusb);
void printData(double rec_area, double elli_area);
void getData3(double rpar1, double rpar2);
void printData2(double vpar1, double vpar2);
int main(void)
{
//your code here
}
//write body of functions
void getData(double base, double height)
{
return;
}
void getData2(double radiusa, double radiusb)
{
return;
}
void printData(double rec_area, double elli_area)
{
cout << "The area of the rectangle is " << rec_area << endl << endl;
cout << "The area of the ellipse is " << elli_area << endl << endl;
return;
}
void getData3(double rpar1, double rpar2)
{
return;
}
void printData2(double vpar1, double vpar2)
{
cout << "Please enter two lenghts: " << endl << endl;
cout << fixed << showpoint << setprecision (1);
return;
}
EDIT: Oh, and roeland is right, when you overload functions they need to have something different in their parameters, otherwise they will seem identical to the compiler.
Upvotes: 2