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

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

Ayuda [Error] ld returned 1 exit status

Publicado por Pedro (1 intervención) el 25/10/2017 01:45:40
Hola a todos, tengo un problema con un programa que he estado haciendo, este es mi programa:
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
#include <stdio.h>
#include <math.h>
 
int Primos1 (int q){
	int i,a;
	a=0;
	for (i=1;i<=q;i++)
	{
		if (q%i==0)
		a++;
	}
	if (a==2)
	{
			printf("el numero ingresado es primo.");
	}
	else
	{
		printf("el numero ingresado no es primo.");
	}
	return 0;
}
int Primos2 (int n){
 
 
	printf("\n numero invertido: ");
	do{
		printf("%d",n%10);
		n=n/10;
	}while (n!=0);
	return 0;
}
int contarDigitos (int o){
	int contador=0;
	while (o != 0){
		o /= 10;
		contador++;
	}
	return contador;
}
int invertir (int o){
	int inverso=0, exponente, residuo;
	exponente=contarDigitos (o);
	while (o != 0){
		residuo = o%10;
		exponente--;
		inverso += residuo * pow ( 10.0,(double)exponente);
		o /= 10;
	}
	return inverso;
}
int esPrimo (int o){
	int i, contador=0, retval=false;
	for (i=1; i<=o; i++){
		if (o%i == 0){
			contador++;
		}
	}
	if (contador==2){
		retval=true;
	}
	return retval;
}
int main (){
	int i, o, inverso, contador=0,q,n;
	printf("ingresar numero: ");
	scanf("%d",&q);
	Primos1(q);
	printf("\n");
	printf("introduzca el numero que desea invertir: ");
	scanf("%d",&n);
	Primos2(n);
	printf("\n");
	do {
		printf ("Introduce el valor de N: ");
		scanf ("%i", &o);
		if (o<10){
			printf ("Para poder invertirlo tiene que tener al menos 2 digitos.\nVuelva a intentarlo.\n");
		}
	}while (o<10);
 
	for (i=10; i<=o; i++){
		if (esPrimo (i)==true){
			inverso=invertir(i);
			if (esPrimo (inverso)==true){
				printf ("%d  ", i);
				contador++;
			}
		}
	}
	if (contador==0){
		printf ("No hay ningun valor valido.");
	}else {
		printf ("\nSe encontraron %d valores.", contador);
	}
	return 0;
}

la cosa es que cuando lo compilo me da el error "[Error] ld returned 1 exit status", pero si lo copio y lo pego en
otro proyecto me funciona perfecto pero despues de un poco me vuelve a tirar este error, alguien que me ayude porfavor. gracias
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
sin imagen de perfil
Val: 117
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda [Error] ld returned 1 exit status

Publicado por dario alderaan@ec-red.com (107 intervenciones) el 25/10/2017 11:36:05
Tu programa un poco arreglado.
Compara con el tuyo, hice algunas modificaciones.
Saludos.

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
#include <stdio.h>
#include <math.h>
 
int Primos1 (int q) {
	int i,a;
	a=0;
 
	for (i=1;i<=q;i++)
	{
		if (q%i==0)
		a++;
	}
 
	if (a==2)
			printf("el numero ingresado es primo.");
	else
		printf("el numero ingresado no es primo.");
 
	//return 0;
}
 
int Primos2 (int n){
 
	printf("\nnumero invertido: ");
 
	do {
		printf("%d",n%10);
		n=n/10;
	} while (n!=0);
 
	//return 0;
}
 
int contarDigitos (int o) {
	int contador=0;
 
	while (o != 0) {
		o /= 10;
		contador++;
	}
 
	return contador;
}
 
int invertir (int o) {
	int inverso=0, exponente, residuo;
 
	exponente=contarDigitos(o);
 
	while (o != 0) {
		residuo = o%10;
		exponente--;
		inverso += residuo * pow ( 10.0,(double)exponente);
		o /= 10;
	}
 
	return inverso;
}
 
int esPrimo (int o) {
	int i, contador=0, retval=0;
	for (i=1; i<=o; i++) {
		if (o%i == 0)
			contador++;
	}
 
	if (contador==2)
		retval = 1;
 
	return retval;
}
 
int main () {
	int i, o, inverso, contador=0,q,n;
 
	printf("ingresar numero: ");
	scanf("%d",&q);
	Primos1(q);
	printf("\n");
	printf("introduzca el numero que desea invertir: ");
	scanf("%d",&n);
	Primos2(n);
	printf("\n");
 
	do {
		printf ("Introduce el valor de N: ");
		scanf ("%i", &o);
 
		if (o<10)
			printf ("Para poder invertirlo tiene que tener al menos 2 digitos.\nVuelva a intentarlo.\n");
 
	} while (o<10);
 
	for (i=10; i<=o; i++) {
		if (esPrimo (i)){
			inverso=invertir(i);
			if (esPrimo(inverso)) {
				printf ("%d  ", i);
				contador++;
			}
		}
	}
	if (contador==0){
		printf ("No hay ningun valor valido.");
	}else {
		printf ("\nSe encontraron %d valores.", contador);
	}
	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
sin imagen de perfil

Ayuda [Error] ld returned 1 exit status

Publicado por fili (1 intervención) el 23/03/2019 05:08:13
hola tengo un problema cuando compilo me da el error "[Error] ld returned 1 exit status" ayuda porfavor

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
#include <iostream>
#include<conio.h>
using namespace std;
 
struct complejo{
	float real, imaginario;
	}z1,z2;
 
 
	void pedirDatosSuma();
	complejo suma(complejo,complejo);
 
 
	void pedirDatosResta();
	complejo resta(complejo,complejo);
 
	void muestra(complejo);
 
int main(){
	int r;
	cout<<"elija la accion a realizar: "<<endl;
	cout<<"1.Suma\n"<<"2.Resta\n"<<"3.Multiplicacion\n"<<"4.Division\n";
    while(r){
    cin>>r;
    switch(r)
    {
    case 1:{
	pedirDatosSuma();
    complejo x=suma(z1,z2);
 
 
cout<<"ingrese primer numero complejo: "<<endl;
cout<<"parte real: "; cin>>z1.real;
cout<<"parte imaginaria: "; cin>>z1.imaginario;
 
cout<<"\ningrese segundo numero complejo: "<<endl;
cout<<"parte real: "; cin>>z2.real;
cout<<"parte imaginaria: "; cin>>z2.imaginario;
 
 
	z1.real+=z2.real;
	z1.imaginario+=z2.imaginario;
	cout<<"\n El resultado es: "<<x.real<<" , "<<x.imaginario<<endl;
 
		break;
	}
	case 2:{
	pedirDatosResta();
		complejo x=resta(z1,z2);
 
 
cout<<"ingrese primer numero complejo: "<<endl;
cout<<"parte real: "; cin>>z1.real;
cout<<"parte imaginaria: "; cin>>z1.imaginario;
 
cout<<"\ningrese segundo numero complejo: "<<endl;
cout<<"parte real: "; cin>>z2.real;
cout<<"parte imaginaria: "; cin>>z2.imaginario;
 
 
	z1.real-=z2.real;
	z1.imaginario-=z2.imaginario;
	cout<<"\n El resultado es: "<<x.real<<" , "<<x.imaginario<<endl;
 
		break;
	}
 
	getch();
	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
sin imagen de perfil
Val: 9
Ha disminuido su posición en 14 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda [Error] ld returned 1 exit status

Publicado por juan carlos (7 intervenciones) el 30/10/2017 05:25:43
Hola, creo que lo unico que tenes que cambiar es que primo1 y primo2 sea procedimiento y no funciones nada mas ya que no necesitas nada de ellos y ademas como concepto no esta bien que funciones muestren en pantalla o pida por teclado. saludos
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
Revisar política de publicidad