Resuelve ecuaciónes de 3x3 con este programa [Aporte propio

Resuelve ecuaciónes de 3x3 con este programa [Aporte propio]



Qué onda?, hoy que andaba algo oscioso me puse a hacer programilla para resolver sistemas de ecuaciones de 3 ecuaciones con 3 incognitas(3x3), como por ejemplo:


4x + 2y + 3z = 8
3x + 4y + 2z = -1
2x - y + 5z = 3


Resuelve ecuaciónes de 3x3 con este programa [Aporte propio

El programa usa conjuntamente dos métodos para resolverlas, el método de Gauss-Jordan y la eliminación Gaussiana, aqui algo de info sobre estos métodos:

Método Gauss-Jordan - http://es.wikipedia.org/wiki/Eliminaci%C3%B3n_de_Gauss-Jordan
Eliminación Gaussiana - http://proton.ucting.udg.mx/posgrado/cursos/metodos/gauss/index.html


matematicas

Interfaz

numeros


Como pueden ver, en los cuadros de texto se ingresan los valores de las variables, ya que están llenos se solo hace falta presionar el botón "Resolver" para que el programa muestre los resultados.

ecuaciones

Funcionamiento


Bien, vamos a hacer una prueba a ver si es cierto que funciona , supongamos que queremos resolver este sistema de ecuaciones:


x - 3y + 2z = -1
4x + 5y - 2z = 6
-x + 2y + z = -2


El resultado de estas ecuaciones se supone que es:


x = 1
y = 0
z= -1


Entonces, ingresamos los datos en el programa:


operaciones


Y presionamos el boton "Resolver"

Gauss


Como se puede ver, el resultado mostrado es correcto.

ecuacion

Descarga e información


Nombre: Ecuacion3x3 v1.0.jar
Tamaño: 11Kb
Desarrollador: cesar_k13
Uploader: cesar_k13

Le puse espacios a los links de descarga ya saben por que , solo quitalos

Ejecutable:
http://www.mediafire . com/?n9bap5nfdbsxl29

Código fuente:
http://www.mediafire . com/?o9ddvydow8f6f29


Como siempre, el programa lo hice en Java usando NetBeans

Comentarios Destacados

@Sephiroth_77 +19
INTELIGENCIA COLECTIVA!!!

+10 gracias por el aporte

32 comentarios - Resuelve ecuaciónes de 3x3 con este programa [Aporte propio

@Sephiroth_77 +19
INTELIGENCIA COLECTIVA!!!

+10 gracias por el aporte
@elbalba +2
EL DERIVE ES BUENO TAMBIEN PARA RESOLVER
@thes3va +2
para las tareas

pero es mejor hacerlas solo haci se aprende
@matigolazoo -7
ni loco lo descargo
estoy de vacaciones
@koxis +2
estan buenos estos programas propios! +10
@holy_94 +3
loco esto me parece que tendria que ser top, o por lo menos tener mas puntos!
@TukoMaxter +1
Sin duda este post lo dejo en favs, gracias por este grandioso aporte, Saludos!
@rafaelputaro +1
El programa usa conjuntamente dos métodos para resolverlas, el método de Gauss-Jordan y la eliminación Gaussiana, aqui algo de info sobre estos métodos.

Groso hiciste análisis numérico.
@elementalsoft
thes3va dijo:para las tareas

pero es mejor hacerlas solo haci se aprende

creo que vos debes aprender un par de cosas
@Linatoxel -6
puse:

1X+3Y+4Z=8
2X+6y+8Z=16
0,5X+1,5Y+4Z=4

y no lo pudo resolver
@xmauzho +3
Linatoxel dijo:puse:

1X+3Y+4Z=8
2X+6y+8Z=16
0,5X+1,5Y+4Z=4

y no lo pudo resolver


porque la primera y segunda ecuación son equivalentes
@elementalsoft +1
muy bueno, solo queda ver la eficiencia, hace poco hice un método en C# que hace lo mismo y con mi PC logra realizar 4 millones de resoluciones por segundo.
@Linatoxel +2
xmauzho dijo:
Linatoxel dijo:puse:

1X+3Y+4Z=8
2X+6y+8Z=16
0,5X+1,5Y+4Z=4

y no lo pudo resolver


porque la primera y segunda ecuación son equivalentes



sistemas de ecuaciones
@NHM31
I AM MATHLORD
@elementalsoft
cesar_k13 dijo:
elementalsoft dijo:muy bueno, solo queda ver la eficiencia, hace poco hice un método en C# que hace lo mismo y con mi PC logra realizar 4 millones de resoluciones por segundo.

Wow muy bueno, en C# y Java no hay tanta diferencia en la velocidad, habrá que hacer pruebas

yo lo hice para obtener la ecuación de la circunferencia de un círculo para un programa que estoy haciendo.



        public static void DevEcuacionCirculo(double[] salida, PointF p1, PointF p2, PointF p3)
        {
            double d1 = -(p1.X * p1.X) - (p1.Y * p1.Y);
            double d2 = -(p2.X * p2.X) - (p2.Y * p2.Y);
            double d3 = -(p3.X * p3.X) - (p3.Y * p3.Y);

            double q1 = p1.Y * p2.X - p2.Y * p1.X;
            double q2 = p1.Y * p3.X - p3.Y * p1.X;
            double s1 = p2.X - p1.X;
            double s2 = p3.X - p1.X;
            double r1 = d1 * p2.X - d2 * p1.X;
            double r2 = d1 * p3.X - d3 * p1.X;

            double div = s1 * q2 - s2 * q1;
            if ((div == 0.0) || (q1 == 0.0) || (p1.X == 0.0))
            {
                return;
            }
            salida[2] = (r1 * q2 - r2 * q1) / div;
            salida[1] = (r1 - salida[2] * s1) / q1;
            salida[0] = (d1 - salida[1] * p1.Y - salida[2]) / p1.X;
        }

@elchanchon +1
elementalsoft dijo:
cesar_k13 dijo:
elementalsoft dijo:muy bueno, solo queda ver la eficiencia, hace poco hice un método en C# que hace lo mismo y con mi PC logra realizar 4 millones de resoluciones por segundo.

Wow muy bueno, en C# y Java no hay tanta diferencia en la velocidad, habrá que hacer pruebas

yo lo hice para obtener la ecuación de la circunferencia de un círculo para un programa que estoy haciendo.



        public static void DevEcuacionCirculo(double[] salida, PointF p1, PointF p2, PointF p3)
        {
            double d1 = -(p1.X * p1.X) - (p1.Y * p1.Y);
            double d2 = -(p2.X * p2.X) - (p2.Y * p2.Y);
            double d3 = -(p3.X * p3.X) - (p3.Y * p3.Y);

            double q1 = p1.Y * p2.X - p2.Y * p1.X;
            double q2 = p1.Y * p3.X - p3.Y * p1.X;
            double s1 = p2.X - p1.X;
            double s2 = p3.X - p1.X;
            double r1 = d1 * p2.X - d2 * p1.X;
            double r2 = d1 * p3.X - d3 * p1.X;

            double div = s1 * q2 - s2 * q1;
            if ((div == 0.0) || (q1 == 0.0) || (p1.X == 0.0))
            {
                return;
            }
            salida[2] = (r1 * q2 - r2 * q1) / div;
            salida[1] = (r1 - salida[2] * s1) / q1;
            salida[0] = (d1 - salida[1] * p1.Y - salida[2]) / p1.X;
        }



@elcabezon2222 +1
Ni hablar, te dejo +10 solamente por que lo hiciste en java
@marcoslnx
Mierda! no tener uno de estos en el liceo : S jajaja
@elliotgill +1
podes subirlo a otro host de descargas??
@Gaby794
Muy bueno el programa!!! soy un programador novato en visualBasic y me parecio muy interesante... solo una cosa... le baje el programa a otra persona y yo no lo entiendo mucho de sistemas 3x3 pero me dijeron que en un resultado le -0.0... y por lo que entiendo.. -o no existe ... porque puede ser???
@cesar_k13
En cierta forma es correcto, el 0 es como cualquier otro número, por lo tanto es como tener -3, -5, -15, también puede haber -0, pero no hubiera estado mal que quitara que apareciera el -0 de la aplicación para evitar confuciones, gracias por comentar!