Codigo gauss seider en c#
Melissa SanchezTrabajo13 de Agosto de 2015
4.496 Palabras (18 Páginas)514 Visitas
double x, x2, x3, x1, x22, x33, x11,x222, x333 = 0;
double resultado1 = 0;
double resultado2 = 0;
double resultado3 = 0;
double f , a, b, c, d,e = 0;
string orden_salir = "";
Console.WriteLine("\n\t Inserte las ecuaciones:");
Console.WriteLine("\n\t ..........Primera ecuación:........ ");
Console.WriteLine("\n\t Escribe el valor x1"); x = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t Escribe el valorx2"); x2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t Escribe el valor x3"); x3 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t resultado ="); resultado1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t ..........Segunda ecuacion:........ ");
Console.WriteLine("\n\t Escribe el valor x1"); x1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t Escribe el valor x2"); x22 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t Escribe el valor x3"); x33 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t resultado ="); resultado2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t ..........Tercera ecuacion:........ ");
Console.WriteLine("\n\t Escribe el valor x1"); x11 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t Escribe el valor x2"); x222 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t Escribe el valor x3"); x333 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t resultado ="); resultado3 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n\t¿Como deseas resolverlo?");
int opcion = 0;
do
{
Console.WriteLine("\n\t =============== opciones =============");
Console.WriteLine("\n\t == 1. Metodo de Gauss Seidei");
Console.WriteLine("\n\t == 2. Metodo de Jacobi");
string opcionuno = Console.ReadLine();
opcion = int.Parse(opcionuno);
switch (opcion)
{
case 1:
Console.WriteLine("Despeje");
f = (x2 * -1);
a = (x3 * -1);
b = (x1 * -1);
c = (x33 * -1);
d = (x11 * -1);
e = (x222 * -1);
Console.WriteLine("");
Console.WriteLine("");
Console.WriteLine("x1 ="+resultado1+ "+("+f+"x2)+("+a+"x3)/"+x+"");
Console.WriteLine("x2 =" + resultado2 + "+("+b+"x1)+("+c+"x3)/"+x22+"");
Console.WriteLine("x3 =" + resultado3 + "+(" +d+ "x1)+("+e+"x2)/" +x333+ "");
Console.WriteLine("");
Console.WriteLine("----------------------------------------------------");
Console.WriteLine("");
Console.WriteLine("Iteracion 1 ");
double t = 0;
double m = 0;
double l = 0;
t = Math.Round(resultado1 / x,4);
Console.WriteLine("x1 ="+t);
m = Math.Round(( resultado2 + (b*t) )/ x22,4) ;
Console.WriteLine("x2 =" +m);
l = Math.Round(( resultado3 + (d*t)+(e*m))/x333,4);
Console.WriteLine("x3 =" + l);
Console.WriteLine("----------------------------------------------------");
Console.WriteLine("");
Console.WriteLine("Iteracion 2 ");
Console.WriteLine("");
double r1, r2, r3 = 0;
r1 = Math.Round( (resultado1 +( f*m)+ (a*l))/x, 4);
Console.WriteLine("x1 =" + r1);
r2 = Math.Round( (resultado2 + (b * r1) + (c * l) )/ x22, 4);
Console.WriteLine("x2 =" + r2);
r3 = Math.Round((resultado3 + (d *r1) + (e * r2) )/ x333, 4);
Console.WriteLine("x3 =" + r3);
...