Graficar con '*' en C++ ecuacion cuadratica

Iniciado por NAESASIMO, 31 Diciembre 2010, 05:17 AM

0 Miembros y 1 Visitante están viendo este tema.

NAESASIMO

Hola a todos!!, tengo un  problema o mejor dicho no se como hacer para graficar los valores de las soluciones de una ecuacion cuadratica, es decir, representar mediante astericos '*' la grafica de la ecuacion dependiendo de si el "discriminante" es mayor, menor o igual a cero. En mi problema original dice: "Sea Disc=B^2 - 4AC, donde Disc= Discriminante, si Disc > 0 es una hiperbola, si Disc < 0 es una elipse, si Disc = 0 es una parabola. Diseñe un algoritmo donde se da como entrada los  numeros A, B, C y se muestra en pantalla si es una parabola, hperbola o elipse."

Tengo un codigo para resolver la ecuacion cuadratica y da el resultado de la operacion dependiendo del discriminante, pero ahora quiero que estos valores sean graficados... el codigo es el siguiente:



#include <stdio.h>
#include <stdlib.h>
#include <math.h>

char opc;
short bucle = 1;
float a,b,c,disc,res,im1,im2;

int main() {
   while (bucle) {
     
      //Introducción
     
      printf("\n Solucion de ecuaciones de 2do grado.\n Introduce los factores A, B y C de la ecuacion: Ax^2+By+C=0\n");
      printf("Teclea A:");
      scanf("%f",&a);
      printf("Teclea B:");
      scanf("%f",&b);
      printf("Teclea C:");
      scanf("%f",&c);

      //Soluciones
      res = (-b)/(2*a);
      disc = (b*b)-(4*a*c);
      im1 = sqrt(fabs(disc))/(2*a);
      im2 = -im1;

      if (disc>0) printf("\n\nSolucion doble: %.3f , %.3f",res+im1,res+im2);
      else if (disc==0) printf("\n\nSolucion unica: %.3f",res);
      else if (disc<0) printf("\n\nSolucion doble imaginaria: %.3f+%.3fi , %.3f+%.3fi",res,im1,res,im2);
     
      //Finalizar o seguir
      printf("\n\n Hacer otra ecuacion [s/n]?");
      opc = 0;
      while (opc!='s' && opc!='n') {
         scanf("%c",&opc);
         if (opc=='n') bucle = 0;
      }
   }
}





N0body

Creo que no te responderán, no sólo porque va contra la norma de no resolver tareas porque además está muy poco claro...

La gráfica (en el plano real) de una FUNCIÓN cuadrática es siempre una parábola...

y=-x^2+2

Aquí la gráfica sería igual a la de -x^2 "corrida" dos enteros hacia arriba... y la de -x^2 es el resultado de aplicar simetría axial con respecto al eje x a la gráfica de x^2.

Ahora, si tu te refieres a una ECUACIÓN cuadrática... osea a algo parecido a:

-x^2+2=0

Está es una ecuación (como muy bien el nombre dice), que puedes hallar los valores de x (reales o imaginarios) que satisfagan la ecuación...


Ahora, el post deja confuso si quieres graficar una función cuadrática dependiendo de sus coeficientes o deseas encontrar las soluciones de una ecuación cuadrática (dada sus coeficientes) y representar esos valores en el plano real o imaginario (dependiendo de las soluciones)


El programa que pusiste encuentra las soluciones de la cuadrática... espero que tú mismo lo entiendas y no lo hayas copiado, porque ese ya sería un paso en falso...

Creo que es un programa muy lindo de hacer si se trata de graficar la función cuadrática y sería una pena que no te respondieran porque te expresaste de forma escasa...

Otra cosa: usa las etiquetas GeSHi para que el código se vea de forma más clara...

Oblivi0n

Para estas cosas es mejor utilizar WinAPI (o librerias graficas  :xD ), con una simple estructira POINT  y saber un poco de GDI basico lo haces.

xassiz~

¿En C o C++? Título y código se contradicen :rolleyes:

leogtz

Cita de: N0body en  2 Enero 2011, 04:14 AM
La gráfica (en el plano real) de una FUNCIÓN cuadrática es siempre una parábola...

Mi profesor de matemáticas te habría corregido diciéndote que en R^2 o en dos dimensiones, al decir "plano" hablamos de otra dimensión.
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

Ferno

Cita de: Leo Gutiérrez. en  2 Enero 2011, 20:57 PM
Mi profesor de matemáticas te habría corregido diciéndote que en R^2 o en dos dimensiones, al decir "plano" hablamos de otra dimensión.

No habría que seguir desvirtuando pero... 1 dimension = R = recta real.
2 dimensiones = R^2 = plano. (plano xy genéricamente)
3 dimensiones = R^3 = espacio.

Al menos para mí está bien dicho :P

leogtz

¿Saben qué?, acepto mi error, me he confundido.

Me he confundido con el plano.

Línea recta -> 1 dimensión.
Plano -> 2 dimensión. R^2
Espacio -> 3 dimensión R^3
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

ghastlyX

El caso es que parece que mezcla conceptos diferentes. Por el post se entiende que se refiere a la ecuación de segundo grado de toda la vida, que sin contar los casos degenerados siempre es una parábola como bien se ha dicho.

Sin embargo, por lo que dice sobre decir si es una parábola, hipérbola o elipse, me hace pensar que quizá lo que quiera hacer sea clasificar una cónica según sus invariantes métricos, cuyas ecuaciones también son funciones cuadráticas, sólo que de dos variables.

Ferno

Cita de: ghastlyX en  3 Enero 2011, 19:01 PM
El caso es que parece que mezcla conceptos diferentes. Por el post se entiende que se refiere a la ecuación de segundo grado de toda la vida, que sin contar los casos degenerados siempre es una parábola como bien se ha dicho.

Sin embargo, por lo que dice sobre decir si es una parábola, hipérbola o elipse, me hace pensar que quizá lo que quiera hacer sea clasificar una cónica según sus invariantes métricos, cuyas ecuaciones también son funciones cuadráticas, sólo que de dos variables.

Es exactamente esto que dices.
Discriminante de una sección cónica: "http://es.wikipedia.org/wiki/Discriminante#Discriminante_de_una_secci.C3.B3n_c.C3.B3nica"


N0body

Pues si es ésto el que creo el post, no tenía mucha idea de lo que en verdad hace el código que pone.
Es más, me tomaría el atrevimiento de decir que no lo leyó, ya que en el dice:
" Introduce los factores A, B y C de la ecuacion: Ax^2+By+C=0"


y al hablar de una sección cónica tenemos algo así: (sacado del artículo de wikipedia posteado anteriormente)
ax2 + bxy + cy2 + dx + ey + f= 0
Que tiene infinitos pares (x,y) que satisfacen la ecuación. Puediendo ser representados esos pares como puntos siendo "x" la abscisa e "y" la ordenada del punto (no es una gráfica de función ya que pueden existir diferentes "y" para un mismo "x"). La figura determinada ahora sí puede ser cualquier cónica...