Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1.
2.
3. 4. 5. 6. 7.
8.
9. 10. 11. 12.
Complete!
end if for k = p + 1 : N do mult = A(k; p)=A(p; p) {Determinar el multiplicador} A(k : p + 1) = A(k : p + 1) - mult * Complete! {Esta instruccin es vectorial o escalar?, la opcin contraria como se programara?}
13.
14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Complete!
end for end for if A( Complete! ) == Complete! then Complete! end if {Sustitucin regresiva} X=zeros( Complete! ) {Porque se requiere esta instruccin que garantizara que funcione la lnea 23?} X(N)=b(N)/A(N,N) for k= Complete! do X(k) = (b(k)-[A(k,k+1:N)*x(k+1:N)])/A(k,k) {La operacin entre corchetes es vectorial o escalar?, la opcin contraria como se programara?} end for return X {Solucin aproximada X}
24. 25.
Lnea 4: if xmax==0 Esta lnea es la encargada de que todos los valores entregados sea diferentes de cero (0) de lo contrario se puede decir que el sistema tiene ms de una solucin. Lnea 8: A([p i],:)=A([i p],:); B([p i])=B([i p]);
Con estas lneas se selecciona todas las filas i y p de la matriz A y del vector B y se intercambian.
Lnea 12: A(k, p+1:N) = A(k, p+1:N) - mult * A(p, p+1:N); Esta es la lnea completa del cdigo, el cual realiza la operacin de modo vectorial. Esta lnea se puede remplazar por las siguientes las cuales realizan la misma operacin pero con escalar: for d=p+1:N A(k,d) = A(k, d) - mult * A(p, d); end Lneas 16 y 17: if A(N,N) == 0 then print No encuentra un Pivote 0, PARE
Esta lnea verifica que el valor de la ltima posicin de la matriz no sea igual a cero (0) de lo contrario se puede decir que el sistema tiene ms de una solucin.
Lnea 20: x=zeros(N,1); Este cdigo crea un vector x de N posiciones llena con ceros (0). Este cdigo es importante debido a que los valores de las variables se guardaran en este vector. Lnea 22: for k=(N-1):-1:1 Este es el cdigo completo. Aqu se puede ver las limitantes del for. Lnea 23: La operacin en el corchete es una operacin netamente vectorial. La lnea 23 se puede remplazar por las siguientes lneas: w=0; for d=k+1:N w=w+A(k,d)*x(d); end x(k)=(b(k)-w)/A(k,k);