这是我的代码,它有一个矩阵,在其中添加每一行的col
as example
sum of row 1 =4
sum of col 1= 10
我的号码将是14 到目前为止,我的代码工作正确,其中number用col计算所有行并给出这个显示
number =
14 18 22 26
在我的循环操作系统中,我出错了,将它拆分为一个计数器来显示 1号有14个 2号有18个 3号有22个 4号有26个 它适用于第一个并进入无限循环甚至不显示其余数字你能告诉我如何使用它以及我哪里出错了谢谢 第一个循环结果
matrix =
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 has 14 number
12 has 22 number
码
matrix=[1 2 3 4;1 2 3 4;1 2 3 4;1 2 3 4]
number= sum(matrix)+sum(matrix');
number
len= length(number);
x=1;
y=1;
number(1,y) ; %
while x<=len
fprintf('%x has %d number \n',x,number)
x+1;
y+1;
number
end
所需的输出:
matrix =
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
number =
14 18 22 26
1 has 14
2 has 18
3 has 22
4 has 26
答案 0 :(得分:0)
循环中有多个错误:
y未使用,您可以将其删除。
numbers
每次迭代打印完整数组,而不是你想要的。
x+1
计算x+1
但不对结果做任何处理。请改用x=x+1;
。
使用fprint
时,您使用完整数组number
而不是正确的数字number(x)
作为输入参数。
matrix=[1 2 3 4;1 2 3 4;1 2 3 4;1 2 3 4]
number= sum(matrix)+sum(matrix');
number
len= length(number);
x=1;
while x<=len
fprintf('%x has %d number \n',x,number(x))
x=x+1;
end
答案 1 :(得分:0)
matrix=[1 2 3 4;1 2 3 4;1 2 3 4;1 2 3 4]
number= sum(matrix)+sum(matrix');
number
len= length(number);
x=1;
while x<=len
fprintf('%x has %d number \n',x,number(x))
x=x+1;
end