Título: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: raulgombru en 15 Septiembre 2010, 18:12 pm Hola, estoy aprendiendo C y tengo que hacer un programa para resolver ecuaciones de segundo grado. Lo he repasado mil veces y no sé donde está el error que me da el compilador. Dejo el código, a ver si alguien lo ve!
Código
Como compilador estoy usando Dev c, aunque también lo he intentado con gcc desde la terminal de ubuntu. Este es el "resultado de la compilación" que me muestra Dev: Código: Compilador: Default compiler Ejecutando gcc.exe... gcc.exe "C:\Users\Raúlg\Desktop\primero.c" -o "C:\Users\Raúlg\Desktop\primero.exe" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib" C:\Users\Raúlg\Desktop\primero.c:1:20: studio.h: No such file or directory C:\Users\Raúlg\Desktop\primero.c:10:61: warning: trigraph ??/ ignored, use -trigraphs to enable C:\Users\Raúlg\Desktop\primero.c: In function `main': C:\Users\Raúlg\Desktop\primero.c:6: warning: return type of 'main' is not `int' C:\Users\Raúlg\Desktop\primero.c: At top level: C:\Users\Raúlg\Desktop\primero.c:62: error: syntax error before '}' token Ejecución Terminada Pero, claro, el programa no se ejecuta. Alguien sabe qué puede pasar? Gracias! Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: pucheto en 15 Septiembre 2010, 18:15 pm stdio.h en vez de studio.h.
Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: raulgombru en 15 Septiembre 2010, 18:17 pm Ah sí, es verdad. Pero sigue dando el mismo error :-\
Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: pucheto en 15 Septiembre 2010, 18:20 pm main devuelve int no void. y te falta un { ACA VA EL CODIGO } despues de un else
Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: raulgombru en 15 Septiembre 2010, 18:29 pm OK, ya he visto lo del esle y parece que tira, por lo menos ahora se ejecuta. SIn embargo, algunos carácteres como interrogantes y letras con acento salen mal.
A qué te refieres con lo de "main devuelve int no void."? Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: Horricreu en 15 Septiembre 2010, 18:34 pm A parte de los numerosos errores que puedan existir, te doy unos consejos prácticos que seguro que te sirven:
Saludos :P PD: para utilizar GeSHi: C [code=c][/code] C++ [code=cpp][/code] Lh: No hagas doble post, utiliza el botón modificar. A qué te refieres con lo de "main devuelve int no void."? Código: http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html Saludos :P Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: raulgombru en 15 Septiembre 2010, 18:38 pm Ok, como no entiendo muy bien alguna cosa de la que habláis me miraré el link que me has pasado, a ver si me entero más xD
Gracias de todas maneras Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: Horricreu en 15 Septiembre 2010, 18:42 pm De nada ::) Pero ya sabes, cualquier duda puedes preguntar y encantado te respondemos.
Saludos :P Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: pucheto en 16 Septiembre 2010, 03:46 am Off Topic: Perdona por la forma tan seca de responder antes, no estaba de buen humor.
Título: Re: Aprendiendo C: Programa resolver ecuaciones de 2º grado Publicado por: Lolo_Molo en 18 Septiembre 2010, 17:17 pm Este programita le hice en su dia y casualemente aun tengo el codigo fuente, he estado leyendo el tuyo y bueno no he visto cual es el fallo, te dejo el mio hechale un vistazo y ves donde puede estar el fallo porque yo soy de esos que necesitan ver el codigo bastante claro si no, no hay quien encuentre nada :D
Código: #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <math.h> /* Fuente: EC2GRADO.C Descripción: Resuelve la ecuación de segundo grado ax + bx + c = 0 */ int main(void) { /* Declaraciones */ float a, b, c; /* Coeficientes ecuación de segundo grado */ float x1, x2; /* Soluciones reales */ float x1real, x2real; /* Partes reales soluciones complejas */ float x1imag, x2imag; /* Partes imaginarias soluciones complejas */ float discriminante; /* Presentación */ system ("cls"); /* Borrado de la pantalla */ printf("Resolución de la ecuación de segundo grado\n"); printf("==========================================\n"); printf("El programa soluciona la ecuación de segundo grado\n"); printf(" 2 \n"); printf(" ax + bx + c = 0 \n"); /* Petición de datos */ printf("Introduzca los coeficientes:\n"); printf("Coeficiente a?: "); scanf("%f", &a); printf("Coeficiente b?: "); scanf("%f", &b); printf("Coeficiente c?: "); scanf("%f", &c); /* Cálculos y resultados */ discriminante = b*b - 4*a*c; printf("\nLa ecuación\n"); printf("%14d\n", 2); printf("%12gx + %gx + %g = 0\n", a, b, c); printf("tiene por soluciones "); if (discriminante == 0) { printf("una raíz real doble\n"); x1 = x2 = -b / (2*a); printf("x1 = %.2f\n", x1); printf("x2 = %.2f\n", x2); } else if (discriminante > 0) { printf("dos raíces reales\n"); x1 = (-b + sqrt(discriminante)) / (2*a); x2 = (-b - sqrt(discriminante)) / (2*a); printf("x1 = %.2f\n", x1); printf("x2 = %.2f\n", x2); } else { printf("dos raices complejas conjugadas\n"); x1real = x2real = -b / (2*a); x1imag = sqrt(-discriminante) / (2*a); x2imag = -sqrt(-discriminante) / (2*a); printf("x1 = (%.2f, %.2fi)\n", x1real, x1imag); printf("x2 = (%.2f, %.2fi)\n", x2real, x2imag); } system ("pause"); return 0; } Salu2! |