帮助矩阵加法和for循环

44次(过去30天)
史蒂夫Avilesmejia
编辑: 里克 8月28日
我需要的代码都告诉我如果向量匹配,如果不是它需要显示一个错误消息,当我运行这段代码不会工作,只是给我第一个变量C矢量也会给我正确的但给我两行数字,我不能算出他们来自哪里。

答案(1)

里克
里克 8月28日
编辑:里克 8月28日
你的代码有几个问题(没有任何特定的顺序):
  1. 无法到达错误消息,因为只有在大小匹配时才会计算该错误消息。使用其他代替。
  2. 错误消息在末尾缺少一个换行符。
  3. 你用的是clear all。
  4. 你用i和j作为变量。这不是一个大问题,但最好避免这种习惯。
  5. 你的循环不会为一个值范围运行。看看你是如何定义它们的。
  6. 你使用长度。你应该使用尺寸_,dim)或numel。
  7. 您将代码作为图像发布,所以现在没有人可以为您编辑它。
  8. 你存储A的行和col大小,但不处理这些值。这一行还假设数组是2D或矢量,因此它在3D或更高版本中不能正常工作。
  9. 您使用了嵌套循环而不是简单地使用+进行加法操作。
  10. 您的错误不会阻止添加的运行,所以一旦您修复了代码,就会触发另一个错误。
  11. 你没有在任何地方初始化C,所以如果你删除清除所有而不是放清晰的clearvars在c中会有剩余的值。目前这段代码不必要地慢,因为它必须动态地扩展数组。读到的()0 ()
  12. 您在循环中忽略了分号,因此C将在每次添加后打印,在命令窗口中造成混乱,并降低代码速度。
一般建议:确保没有橙色的线。要么解决问题,要么(只有在您完全确定没有实际问题时)使用%#ok pragma:右键单击橙色线并选择suppress warning。只有显示C的最后一行是这个的候选行。所有的其他问题都要解决。

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!