Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [n] = gauss(m)
- ms = size(m);
- mc = ms(1,2);
- ml = ms(1,1);
- if ml + 1 ~= mc
- error('Matriz invalida.')
- else
- a = 1;
- for a = 1:ml
- k = m(a,a);
- if k == 0
- c = a + 1;
- for c = (a + 1):ml
- if m(c,a) ~= 0
- b = 1;
- k = m(c,a);
- for b = 1:mc
- m(a,b) = m(a,b) - k*m(c,b);
- endfor
- break;
- endif
- endfor
- k = m(a,a);
- if k == 0
- error('Matriz invalida.');
- endif
- endif
- b = 1;
- for b = 1:mc
- m(a,b) = m(a,b)/k;
- endfor
- c = a +1;
- for c = (a+1):ml
- b = 1;
- k = m(c,a);
- for b = 1:mc
- m(c,b) = m(c,b) - k*m(a,b);
- endfor
- endfor
- endfor
- endif
- m
- for a = 1:ml-1
- for c = 1:a
- k = m(ml-a,mc-c);
- for b = 1:mc
- m(ml-a,b)=m(ml-a,b)-k*m(ml+1-c,b);
- endfor
- m
- endfor
- endfor
- for a = 1:ml
- n(a,1) = m(a,mc);
- endfor
- endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement