private IStudyAssignment Adder(IComplexNumber addend, AdderArgument type) { var result = new ComplexNumber(RealPart + addend.RealPart * (int)type, ImaginaryPart + addend.ImaginaryPart * (int)type); return(result); }
private IThreeDVector Adder(IThreeDVector vector, AdderArgument type) { return(new ThreeDVector() { X = X + vector[0] * (int)type, Y = Y + vector[1] * (int)type, Z = Z + vector[2] * (int)type }); }
private ISquareMatrix Adder(ISquareMatrix added, AdderArgument type) { if (Rank != added.Rank) { throw new ArgumentException(); } var result = GetZeroMatrix(); for (var i = 0; i < Rank; i++) { for (var j = 0; j < Rank; j++) { result[i, j] = this[i, j] + added[i, j] * (int)type; } } return(result); }
public IOneDArray Adder(IOneDArray added, AdderArgument type) { try { if (StartIndex != added.StartIndex || Length != added.Length) { throw new IndexOutOfRangeException(); } } catch (IndexOutOfRangeException e) { Console.WriteLine("Выход за пределы массива"); return(new OneDArray()); } var result = new OneDArray(StartIndex, Length); for (var i = StartIndex; i < StartIndex + Length; i++) { result[i] = this[i] + added[i] * (int)type; } return(result); }
private INDimensionalVector Adder(INDimensionalVector value, AdderArgument type) { var length = GetBiggerLength(value); var result = new NDimensionalVector(); for (var i = 0; i < length; i++) { if (i >= _vector.Count) { result[i] = (int)type * value[i]; } else if (i >= value.Count) { result[i] = this[i]; } else { result[i] = this[i] + (int)type * value[i]; } } return(result); }