I've got a wrong answer on subtract Matrices
Show older comments
I've got a wrong solution when I subtract two matrices with Incompatible Sizes between the row and column.
>> s = [-1 8 5]
s =
-1 8 5
>> t = [7;0;11]
t =
7
0
11
>> s-t
ans =
-8 1 -2
-1 8 5
-12 -3 -6
it should be the following answer:
??? Error using ==> - Matrix dimensions must agree.
4 Comments
Birdman
on 27 Feb 2018
Where is the following answer?
Abo Mohammed
on 27 Feb 2018
Edited: Abo Mohammed
on 27 Feb 2018
KL
on 27 Feb 2018
You may want to read about implicit expansion.
KL
on 27 Feb 2018
Another thread on this issue:
Accepted Answer
More Answers (1)
KSSV
on 27 Feb 2018
s = [-1 8 5] ;
t = [7;0;11] ;
if isequal(size(s),size(t))
iwant = s-t ;
else
error('using ==>- Matrix dimensions must agree.')
end
1 Comment
Steven Lord
on 27 Feb 2018
That prohibits scalar expansion as well. If you want to allow scalar s with non-scalar t or vice versa:
if isequal(size(s),size(t)) || isscalar(s) || isscalar(t)
iwant = s-t ;
else
error('using ==>- Matrix dimensions must agree.')
end
Categories
Find more on Logical in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!