Addtion of two matrix.

402 次查看(过去 30 天)
priyanka
priyanka 2014-10-2
评论: Vansh 2023-3-23
I am taking inputs from user to enter row n column and adding two matrix. But the output i am getting is of different dimension. please tell me what is the problem in given code.
m = input('Enter number of rows: ');
n = input('Enter number of columns: ');
for i = 1:m
for j = 1:n
str = ['Enter element in row ' num2str(i) ', col ' num2str(j) ': '];
T(i,j) = input(str);
end
end
%a = input('Enter number of rows: ');
%b = input('Enter number of columns: ');
strn = ['Enter elements for matrix S']
for i = 1:m
for j = 1:n
strn = ['Enter element in row ' num2str(i) ', col ' num2str(j) ': '];
S(i,j) = input(strn);
end
end
string= ['Addition is:']
for i=1:m
for j=1:n
C(i,j)=0;
end
end
C(i,j)=0
for i= 1:m
for j=1:n
C(i,j)= T(i,j)+ S(i,j)
end
end

采纳的回答

dpb
dpb 2014-10-2
The problem is the line
C(i,j)=0
after the loop that creates the zero-filled array--when done, the i,j indices are one greater than the loop limit so this sets the element at C(m+1,n+1) to zero. Matlab automagically creates a full array of that size so the end result is always going to be one larger than the inputs in each direction.
Simply remove this line--it's not needed.
I presume you're doing this this way as a pedagogical exercise and realize all of these loops can be eliminated?
Also, I'd suggest adding the semicolon to the following line and then using
C(i,j)= T(i,j)+ S(i,j)
disp(C)
at the end. Perhaps you were simply echoing output to command window for debugging, however.

更多回答(2 个)

priyanka
priyanka 2014-10-2
Thank you.

Nalini Vishnoi
Nalini Vishnoi 2014-10-2
Since MATLAB allows matrix manipulations directly, you can add 2 matrices A and B of the same size using a single line of code:
C = A + B;
and this should provide you with the desired result.
  2 个评论
VINEET THAKUR
VINEET THAKUR 2022-10-24
Sometimes in learning we forced to not use build-in functions, so it's a good code.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by