public MethodsVector TurnVector(MethodsVector vector) { for (int i = 0; i < vector.component.Length; ++i) { vector.component[i] *= -1; } return(new MethodsVector(vector.size, vector.component)); }
// TODO Правильно ли считается скаляр? Что делать если вектора разного размера? public static double ScalarProductVectors(MethodsVector vector1, MethodsVector vector2) { double scalarProduct = 0; for (int i = 0; i < vector1.component.Length; ++i) { scalarProduct += vector1.component[i] * vector2.component[i]; } return(scalarProduct); }
// TODO Size - что происходит с этим значением? Нет конструктора создания обычного объекта. public MethodsVector SubtractionVectors(MethodsVector vector) { List <double> newComponent = new List <double>(); for (int i = 0; i < vector.component.Length; ++i) { //TODO компоненты меньшей дленны должны заполняться "0" if (vector.component.Length < component.Length) { newComponent.Add(component[i] - vector.component[i]); } else { newComponent.Add(component[i]); } } return(new MethodsVector(newComponent.ToArray())); }
public static MethodsVector AdditionVectorsStatic(MethodsVector vector1, MethodsVector vector2) { List <double> newComponent = new List <double>(); for (int i = 0; i < vector2.component.Length; ++i) { //TODO компоненты меньшей дленны должны заполняться "0" if (vector2.component.Length < vector1.component.Length) { newComponent.Add(vector1.component[i] + vector2.component[i]); } else { newComponent.Add(vector1.component[i]); } } return(new MethodsVector(newComponent.ToArray())); }
public override bool Equals(object obj) { if (ReferenceEquals(this, obj)) { return(true); } if (ReferenceEquals(null, obj) || obj.GetType() != GetType()) { return(false); } MethodsVector vector = (MethodsVector)obj; for (int i = 0; i < component.Length; ++i) { if (vector.component[i] != component[i]) { return(false); } } return(vector.size == size); }
public static void Main(string[] args) { MethodsVector v = new MethodsVector(4); Console.WriteLine($"{v}"); }
public MethodsVector(MethodsVector vector) { size = vector.size; Array.Copy(component, vector.component, vector.component.Length); }
public double GetSize(MethodsVector vector) { return(vector.size); }