function soustava
r=input('Zadej pocet radku: ');
s=input('Zadej pocet sloupcu: ');
if((r~=s)||(r<=0)||(s<=0))
    disp('Nevhodne zadani')
    return
end
for m=1:r
    for n=1:s
        A(m,n)=input(['Prvek ',num2str(m),',',num2str(n),': ']);
    end
end
disp('Matice')
disp(A)
b=zeros(r,1);
for m=1:r
    b(m)=input(['Prvek ',num2str(m),': ']);
end
disp('Vektor pravych stran')
disp(b)
if(det(A)~=0)
    x=A\b;
    disp('Reseni')
    disp(x)
elseif((rank(A)==rank([A,b]))&&(rank(A)~=r))
    disp('Soustava ma nekonecne mnoho reseni')
else
    disp('Soustava nema reseni')
end
end

