Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clear;
- ///////////////////////////////////////////////////////
- // Montante.sce
- //
- // Este programa calcula el resultado de
- // un sistema de ecuaciones con el método
- // de Montante
- //
- // Ernesto Garcia -- A00820783
- // Santiago Díaz -- A01252554
- //////////////////////////////////////////////////////
- //////////////////////////////////////////////////////
- // getMatrix
- //
- // Función que carga los valores de una matriz
- // con un número dado de columnas y renglones
- //
- // Parametros:
- // iRows cantidad de renglones
- // iCols cantidad de columnas
- // Regresa:
- // dMatrix matriz resultado con los valores ingresados
- /////////////////////////////////////////////////////
- function dMatrix = getMatrix(iRows, iCols)
- for i = 1 : iRows
- for j = 1 : iCols
- dMatrix(i,j) = input("Ingresa el valor en (" + string(i) + "," + string(j) + "): ");
- end
- end
- endfunction
- //////////////////////////////////////////////////////
- // montante
- //
- // Función que ejecuta el método de Montante
- //
- // Parametros:
- // dMatrix matriz que se busca solucionar
- // iRows cantidad de renglones de la matriz
- // iCols cantidad de columnas de la matrix
- /////////////////////////////////////////////////////
- function montante(dMatrix, iRows, iCols)
- iPivoteAnterior = 1;
- for i = 1 : iRows
- // Pivoteo i
- for k = 1 : iRows
- if k <> i then
- for j = i + 1 : iCols
- dMatrix(k, j) = (dMatrix(i, i) * dMatrix(k, j) - dMatrix(k, i) * dMatrix(i, j)) / iPivoteAnterior;
- end
- dMatrix(k, i) = 0;
- end
- end
- iPivoteAnterior = dMatrix(i, i);
- disp(dMatrix);
- end
- for i = 1 : iRows - 1
- dMatrix(i, i) = iPivoteAnterior;
- end
- disp(dMatrix);
- for i = 1 : iRows
- dX(i) = dMatrix(i, iCols) / iPivoteAnterior;
- end
- disp(dX);
- endfunction
- /////// Programa Principal
- // pido las dimensiones de la matriz
- iRows = input("Cantidad de ecuaciones: ");
- iCols = input("Cantidad de variables: ") + 1;
- // solicita los valores de la matriz
- dMatrix = getMatrix(iRows, iCols);
- // resolvemos el sistema de ecuaciones con Montante y mostramos los resultados
- montante(dMatrix, iRows, iCols);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement