Clear Filters
Clear Filters

Help with element manipulation of matrix

3 views (last 30 days)
So the question I have been asked to do is:
Write a function called digit_compare.m which takes as input two 28 × 28 matrices, and returns the sum of the squares of the differences between the corresponding elements.
Here is what I have done so far. What did I do wrong?
function sum=digit_compare(X,Z)
X=zeros(28);
Z=zeros(28);
n=0;
sum=0;
for i=[1:28]
for j=[1:28]
n=((X(i,j))-(Z(i,j))).^2;
sum=sum+n;
end
end
end

Accepted Answer

Walter Roberson
Walter Roberson on 12 Nov 2017
Edited: Walter Roberson on 12 Nov 2017
You did not take into account the possibility that the inputs might be unsigned integers. When you subtract a larger unsigned integer from a smaller unsigned integer, the result is 0 rather than a negative number.
Also, you overwrite all user-provided inputs with zeros.

More Answers (0)

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!