在matlab显示中需要一些帮助

时间:2014-03-08 15:05:52

标签: matlab

这是我的代码,它有一个矩阵,在其中添加每一行的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

2 个答案:

答案 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