【问题标题】:Trace of a square Matrix方阵的迹
【发布时间】:2013-11-06 01:59:22
【问题描述】:

我想创建一个返回方阵轨迹的属性。 矩阵的迹是其对角元素的总和。 此代码不起作用。不知道为什么!

public double Trace
        {
            double x;
            get
            {
                for (int i = 0; i < this.NbrRows(); i++)
                    for (int j = 0; j < this.NbrColumns(); j++)
                        if (i == j)
                            return x += this.array2D[i, j];
            }
        }

【问题讨论】:

  • 这看起来像家庭作业。但是不管怎样,你确定使用的矩阵是正方形的吗?
  • 这里存在语法错误和逻辑错误,无法正确。
  • 确实,但我在double x 中有这个错误A get or set accessor expected。不是测试错误

标签: c# arrays properties matrix


【解决方案1】:

尝试在 x+= this.array2D[i, j]; 之前删除 return 并在外部 for 循环之后删除 return x;

【讨论】:

  • 用一个值初始化双 x(最有可能是 0)
  • 向我们展示您的更多课程,即您的私有字段在哪里声明
  • 当我们这样做时,您可能需要考虑一些事情。如果您事先检查矩阵是否为正方形,则只需使用一个 for 循环即可。例如: if (this.NbrRows() == this.NbrColumns()) for (int i=0; i
猜你喜欢
  • 2019-07-05
  • 2012-03-18
  • 1970-01-01
  • 1970-01-01
  • 2015-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多