Hola.
Estoy haciendo un ejercicio.
El ejercicio dice asi:
Cree una clase Rectangulo. Ésta clase solo almacena las cordenadas cartesianas de las
4 esquinas del rectángulo. El constructor llama a una función set/establecer que acepta
cuatro coordenadas y verifica que cada una de estas se encuentre en el primer cuadrante y
que ninguna coordena x o y sea mayor que 20. La función set/establecer
verifica que las coordenadas formen, en realidad, un rectángulo. Proporcione funciones
miembro que calculen longitud, ancho, el perímetro y el área. La
longitud es la mayor de las 2 dimensiones.
Ésto es lo que he hecho:
class Rectangulo
{
private:
double cc1[2]; //coordenadas cartesianas del punto 1
double cc2[2];
double cc3[2];
double cc4[2];
public:
Rectangulo();
Rectangulo(double, double, double, double, double, double, double, double);
void establecerCCxy(double* , double* , double* , double*);
};
Y ésta es la implementación de las funciones:
Rectangulo :: Rectangulo()
{
for(int i=0; i<3; i++)
{
cc1[i]=0;
cc2[i]=0;
cc3[i]=0;
cc4[i]=0;
}
}
void establecerCCxy(double* p1, double* p2, double* p3, double *p4)
{
const int x=0, y=1;
cc1[x]=(p1[x] > 20.0 || p1[x] < 0.0)? 0.0 : p1[x];
cc1[y]=(p1[y] > 20.0 || p1[y] < 0.0)? 0.0 : p1[y];
cc2[x]=(p2[x] > 20.0 || p2[x] < 0.0)? 0.0 : p2[x];
cc2[y]=(p2[y] > 20.0 || p2[y] < 0.0)? 0.0 : p2[y];
cc3[x]=(p3[x] > 20.0 || p3[x] < 0.0)? 0.0 : p3[x];
cc3[y]=(p3[y] > 20.0 || p3[y] < 0.0)? 0.0 : p3[y];
cc4[x]=(p4[x] > 20.0 || p4[x] < 0.0)? 0.0 : p4[x];
cc4[y]=(p4[y] > 20.0 || p4[y] < 0.0)? 0.0 : p4[y];
if(p1[y]==p2[y] && p1[x]==p4[x] && p2[x]==p3[x] && p4[y]==p3[y])
cout<<"Las coordenadas si forman un rectangulo"<<endl;
else
cout<<"Las coordenadas no forman un rectangulo"<<endl;
}
Mi problema es:
Cuando creo la función "void establecerCCxy(double* p1, double* p2, double* p3, double *p4)"
el compilador me dice que tengo el siguiente error:
C:\Dev-Cpp\...\Rectangulo.cpp In function `void establecerCCxy(double*, double*, double*, double*)':
30 C:\Dev-Cpp\..\Rectangulo.cpp `cc1' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.)
32 C:\Dev-Cpp\...\Rectangulo.cpp `cc2' undeclared (first use this function)
34 C:\Dev-Cpp\...\Rectangulo.cpp `cc3' undeclared (first use this function)
36 C:\Dev-Cpp\...\Rectangulo.cpp `cc4' undeclared (first use this function)
C:\Dev-Cpp\...\Makefile.win [Build Error] [Rectangulo.o] Error 1
He tratado de encontrar cómo puedo reparar ese error, pero definitivamente, no sé que es lo que tengo malo, y les pido ayuda.
Les agradezco.