public static void Main()
double[,] matriz = new double[nv,nv+1];
double[,] jacobiana = new double[20, nv];
double[] voltaje = { -2.4684, 56.8038, 4.8393, 13.2878, -0.1931, -19.5771,
55.4146, 74.4829, 62.0632, 37.3616, 14.1876,
72.9088, 81.5205, 120.7811, 156.3607, 141.7361,
110.898, 129.7614, 192.8516, 253.4778 };
double[] tiempo = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
for (int i = 0; i < 20; i = i + 1)
jacobiana[i, 0] = tiempo[i] * tiempo[i];
jacobiana[i, 1] = Math.Sin(tiempo[i]);
jacobiana[i, 2] = Math.Exp(tiempo[i] / 10);
for (int i = 0; i < nv; i = i + 1)
for (int j = 0; j < nv; j = j + 1)
for (int k = 0; k < 20; k = k + 1)
matriz[i, j] = matriz[i, j] + jacobiana[k, i] * jacobiana[k, j];
for (int i = 0; i < nv; i = i + 1)
for (int j = 0; j < 1; j = j + 1)
for (int k = 0; k < 20; k = k + 1)
matriz[i, nv] = matriz[i, nv] - voltaje[k] * jacobiana[k, i];
for (int reng = 0; reng < nv; reng = reng + 1)
pivote = matriz[reng, reng];
for(int colu= 0; colu < nv+1; colu++)
matriz[reng,colu]= matriz[reng,colu]/pivote;
for(int reng_elimi = 0; reng_elimi < nv; reng_elimi++)
factor = matriz[reng_elimi,reng];
for(int colu_elimi = 0; colu_elimi < nv+1; colu_elimi++)
matriz[reng_elimi, colu_elimi] = matriz[reng_elimi,colu_elimi]-
factor*matriz[reng,colu_elimi];
Console.WriteLine("El valor final de a0 es: " + a0);
Console.WriteLine("El valor final de a1 es: " + a1);
Console.WriteLine("El valor final de a2 es: " + a2);