0

Hello

I'm haveing a problem running my program because i keep getting error C2447: '{' : missing function header (old-style formal list?). Can someone explain to me how to fix this problem? Below is a copy of my program. The program is designed to take three number inputed buy the user and determine which one is the highest.

#include "stdafx.h"
#include "conio.h"
#include <iostream>


using std::cout;
using std::cin;
using std::endl;
using namespace std;

// function maximum definition;
	// x, y and z are parameters

float maximum(float x, float y, float z);
{
	double x;   // assume x is largest
	double y;
	double z;

	if (x > y) && (x > Z) 
		maximum = x
	else
		if (y > x) && (y > z)
			maximum = y
		else
			if (z > x) && (z > y)
				maximum = z

	return maximum;       // max is largest value
	
} // end function maximum

float maximum(float number1, float number2, float number3); // functional prototype

int main()
{
	double number1;
	double number2;
	double number3;
	cout << "Enter three floating-point numbers: ";
	cin >> number1 >> number2 >> number3;

	// number1, number2 and number3 are arguments to 
	// the maximum function call
   cout << "Maximum is: " << number1 << number2 << number3 << endl;

   return 0;  // indicates successful termination


} // end main
3
Contributors
11
Replies
12
Views
9 Years
Discussion Span
Last Post by noodlneck
0

>>float maximum(float x, float y, float z);

drop the semicolon at the end of this line.

With the function maximum() being defined before main() you don't need a function declaration as well. So you can delete the following line:
float maximum(float number1, float number2, float number3); // functional prototype

0

Okay when i take the (;) off the end of float maximun( float x, float y, float z) I get errors for the x,y,z variables and at the begining of the if then statement. However the function header error goes away. do Have any advice on that. I have listed the errors below.

error C2082: redefinition of formal parameter 'x'
error C2082: redefinition of formal parameter 'y'
error C2082: redefinition of formal parameter 'z'
error C2143: syntax error : missing ';' before '&&'
warning C4390: ';' : empty controlled statement found; is this the intent?

0

You need to remove re-definition of these variables agian here..remove these lines
double x; // assume x is largest
double y;
double z;

0

you forgot call to the function from the main......

int main()
{
double number1;
double number2;
double number3;
double max;
cout << "Enter three floating-point numbers: ";
cin >> number1 >> number2 >> number3;

// number1, number2 and number3 are arguments to 
// the maximum function call
max= maximum( x, y, z); //call to the function.....add this line here..


cout << "Maximum is: " <<max<< endl;

return 0; // indicates successful termination


} // end main
0

change ur if statements like this....

if( (x > y) && (x > Z) )
maximum = x;
else
if ((y > x) && (y > z))
maximum = y;
else
maximum = z;

0

Thanx for your help i really appreitiate it but i have one more error what does (error C2659: '=' : function as left operand) mean and how can i fix it. it shows up on the (write part of the if then statment)

0

sorry..I couldn't get you...could you please tell me in which line you have error.

0

these are all the errors i am getting

if( (x > y) && (x > Z) )
maximum = x; (error C2659: '=' : function as left operand
else)
if ((y > x) && (y > z))
maximum = y; (error C2659: '=' : function as left operand)
else
maximum = z;(error C2659: '=' : function as left operand)
return maximum; // max is largest value(error C2440: 'return' : cannot convert from 'float (__cdecl *)(float,float,float)' to 'float')

0

try this....here iam posting total code for ur program....

float maximum(float, float, float); // functional prototype
float maximum(float x, float y, float z)
{
float  max_value;
if( (x > y) && (x > Z) )
max_value = x;
else
if ((y > x) && (y > z))
max_value = y;
else
max_value = z;

return max_value; // max is largest value

} // end function maximum

int main()
{
float  number1;
float  number2;
float  number3;
cout << "Enter three floating-point numbers: ";
cin >> number1 >> number2 >> number3;

// number1, number2 and number3 are arguments to 
// the maximum function call
cout << "Maximum is: " << maximum(number1,number2,number3) << endl;

return 0; // indicates successful termination


} // end main
This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.