diff --git a/src/Numerics/LinearAlgebra/Storage/MatrixStorage.cs b/src/Numerics/LinearAlgebra/Storage/MatrixStorage.cs index 25297625..3195759e 100644 --- a/src/Numerics/LinearAlgebra/Storage/MatrixStorage.cs +++ b/src/Numerics/LinearAlgebra/Storage/MatrixStorage.cs @@ -190,8 +190,13 @@ namespace MathNet.Numerics.LinearAlgebra.Storage { for (var i = 0; i < hashNum; i++) { - var col = i%ColumnCount; - var row = (i - col)%RowCount; +#if PORTABLE || NETSTANDARD + int col = i%ColumnCount; + int row = i/ColumnCount; +#else + int col; + int row = Math.DivRem(i, ColumnCount, out col); +#endif hash = hash*31 + At(row, col).GetHashCode(); } }