Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [ wynik ]=Gauss ( M )
- [n k]=size(M);
- wyni=0;
- for i=1:n
- if M(i,i)==0 then
- j=i+1;
- while j<=n & M(i,i)==0
- if M(j,i)<>0 then
- wyni=wyni+1;
- wynik(wyni,:)=[0 i j];
- tmp=M(i,:);
- M(i,:)=M(j,:);
- M(j,:)=tmp;
- end
- j=j+1;
- end
- end
- if M(i,i)<>1 then
- wyni=wyni+1;
- wynik(wyni,:)=[1 i 1/M(i,i)]
- M(i,:)=M(i,:)*(1/M(i,i))
- end
- for j=i+1:n
- if M(j,i)<>0 then
- wyni=wyni+1;
- wynik(wyni,:)=[1 j -1/M(j,i)]
- M(j,:)=M(j,:)*(-1/M(j,i))
- wyni=wyni+1;
- wynik(wyni,:)=[2 j i]
- M(j,:)=M(j,:)+M(i,:)
- end
- end
- end
- endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement