Dev - C++ - [Error] ld returned 1 exit status

 
Vista:
sin imagen de perfil
Val: 22
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

[Error] ld returned 1 exit status

Publicado por Bryan Jeronimo (13 intervenciones) el 12/03/2019 07:11:29
Alguien podría por favor ayudarme a saber cómo solucionar este error!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
using namespace std;
#include<iostream>
#include<stdlib.h>
#include <math.h>
 
 
class Punto{
 
	private:
	int x;
	int y;
 
	public:
		void LeerPunto();
		Punto(int ejex, int ejey);
		double CalcularD (Punto, Punto);
};
 
class Circulo: public Punto{
	private:
		double radio;
		double area;
		double perimetro;
	public:
		Circulo();
		void LeerA();
		void Imprimir();
		void CalcularA();
		void CalcularP();
};
 
void Circulo::LeerA(){
	cout<<"Digita el valor del radio del circulo: "<<endl;
	cin>>radio;
 
}
 
void Circulo::CalcularA(){
	double radio, Ar;
	Ar= (3.1416)*(pow(radio,2));
 
}
 
void Circulo::CalcularP(){
	double radio, Pe;
	Pe= (3.1416)*(radio*2);
 
}
 
void Circulo::Imprimir(){
	double radio, Ar, Pe;
	Ar= (3.1416)*(pow(radio,2));
	Pe= (3.1416)*(radio*2);
	cout<<"El area del circulo es: "<<Ar<<endl;
	cout<<"El perimetro del circulo es: "<<Pe<<endl;
 
}
 
 
Punto::Punto(int ejex, int ejey){
	x=ejex;
	y=ejey;
}
 
 
void Punto::LeerPunto(){
	cout<<"Digite por favor el valor de la coordenada x"<<endl;
	cin>>x;
	cout<<"Digite por favor el valor de la coordenada y"<<endl;
	cin>>y;
 
	cout<<"La coordenada x digitada fue: "<< x <<endl;
	cout<<"La coordenada y digitada fue: "<< y <<endl;
 
}
 
 
double Punto::CalcularD(Punto M , Punto N )
{
	double Suma, D;
	Suma= (pow( (M.x)- (N.x) , 2) ) + (pow( (M.y) - (N.y) , 2) );
	D= sqrt(Suma);
 
	return D;
 
}
 
 
 
 
int main (){
double Dist;
 
 
Punto p1 (89,6);
Punto p2(99,8);
Circulo C1;
C1.LeerA();
C1.CalcularA();
C1.CalcularP();
C1.Imprimir();
 
p1.LeerPunto();
 
cout<<endl;
 
 
Dist= p1.CalcularD (p1 , p2);
cout<<"El RESULTADO ES : "<< Dist <<endl;
return 0;
 
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

[Error] ld returned 1 exit status

Publicado por Alfil (1444 intervenciones) el 12/03/2019 09:16:37
Fíjate en las diferencias, el principal error que tenías es que no habías definido el constructor para circulo, además creabas objetos punto, cuando los objetos punto deben crearse desde el constructor de circulo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <cmath>
 
using namespace std;
 
class Punto{
 
private:
 int x, y;
 
public:
    Punto( int = 0, int = 0 );
    void establecePunto( int, int );
    int obtieneX() const { return x; }
    int obtieneY() const { return y; }
    double distancia( int, int ) const;
};
 
class Circulo: public Punto{
 
private:
    double radio;
 
public:
    Circulo( double r = 0.0, int x = 0, int y = 0 );
    void estableceRadio( double );
    double obtieneRadio() const;
    double area() const;
    double perimetro() const;
};
 
Punto::Punto( int a, int b ) { establecePunto(a, b); }
 
void Punto::establecePunto( int a, int b ){
    x = a;
    y = b;
}
 
double Punto::distancia( int x2, int y2 ) const
{ return sqrt( (pow( x - x2 , 2) ) + (pow( y - y2 , 2) )); }
 
Circulo::Circulo( double r, int a, int b ) : Punto( a, b )
{ estableceRadio( r ); }
 
void Circulo::estableceRadio( double r )
{ radio = ( r >= 0 ? r : 0 ); }
 
double Circulo::obtieneRadio() const { return radio; }
 
double Circulo::area() const { return 3.14159 * radio * radio; }
 
double Circulo::perimetro() const { return 3.14159 * radio * 2; }
 
int main (){
 
    int x, y, x2, y2;
    float r;
 
    cout << "Coordenada x: "; cin >> x;
    cin.ignore();
    cout << "Coordenada y: "; cin >> y;
    cin.ignore();
    cout << "Radio: "; cin >> r;
    cin.ignore();
    cout << endl;
 
    Circulo c( r, x, y );
 
    cout << "La coordenada X es " << c.obtieneX()
         << "\nLa coordenada Y es " << c.obtieneY()
         << "\nEl radio es " << c.obtieneRadio()
         << "\nEl area es " << c.area()
         << "\nEl perimetro es " << c.perimetro() << endl;
 
    cout << "\nLeer un segundo punto: ";
    cout << "\nCoordenada x: "; cin >> x2;
    cin.ignore();
    cout << "Coordenada y: "; cin >> y2;
 
    cout << "\nLa distancia entre los puntos es: " << c.distancia( x2, y2 ) << endl;
 
    return 0;
 
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar