Título: problema al final con un codigo en c++ Publicado por: 2ricardo_c en 26 Enero 2015, 06:23 am me pidieron hacer un programa que resuelva ecuaciones de segundo grado en c++ pero despues de corregir muchos errores, al final sale que el acceso es denegado porque el numero final es uno? soy nuevo en c++ asi que no conozco mucho de eso, que le puedo hacer ahi?? :huh: :huh: :-(
si les sirve aqui esta el codigo: Código /******************** resolucion de ecuaciones de 2º grado *******************/ //ecuaciones.cpp //asignar valores y librerias #include <stdio.h> #include <stdlib.h> #include <math.h> main() { double a, b, c, d, e, x1, x2; system("cls"); printf("\n introducir los valores de a, b y c\n"); // escribimos a printf(" introducir a\n"); scanf(" %lf", &a); getchar(); system("cls"); // escribimos b printf(" introducir b\n"); scanf(" %lf", &b); getchar(); system("cls"); // escribimos c printf(" introducir c\n"); scanf(" %lf", &c); getchar(); system("cls"); // mostramos la escuacion a seguir printf(" __2__________ /\n"); printf(" la escuacion a seguir x= |(b)-4(a)(c) -\n"); printf(" ----------------\n"); printf(" 2(a)\n"); getchar(); system("cls"); ///raiz d = b * b - 4 * a *c; e = sqrt(d); // operaciones x1 = (-b + e) / (2 * a); x2 = (-b - e) / (2 * a); //resultados printf(" x1 = %g\n", x1); printf(" x2 = %g\n", x2); getchar(); system("cls"); printf(" espero que le haya gustado el programa\n vuelva pronto"); getchar(); system("cls"); printf(" este programa fue creado con fines locales"); getchar(); exit(0); } Título: Re: problema al final con un codigo en c++ Publicado por: eferion en 26 Enero 2015, 08:35 am Así a bote pronto veo un par de errores:
1. Si d = b * b - 4 * a *c es menor que 0, la siguiente instrucción, e = sqrt(d) va a dar error. La raiz de cualquier número negativo da lugar a números complejos y esta función no está preparada para este tipo de cálculos. 2. Si a = 0, el divisor en (-b + e) / (2 * a) será igualmente 0 y eso resulta en un error en tiempo de ejecución. |