static void Main(string[] args) { Vector vector1 = new Vector(3); Console.WriteLine("Zero vector: " + vector1); double[] coordinates = { 1, 3, 4, 6.5, 3, 9 }; vector1 = new Vector(coordinates); Console.WriteLine("vector1: " + vector1); Console.WriteLine($"Dimension = {vector1.GetSize()}"); Console.WriteLine($"Length = {vector1.GetLength()}"); Vector vector2 = new Vector(vector1); Console.WriteLine("vector2: " + vector2); if (vector1.Equals(vector2)) { Console.WriteLine("Vectors are the same."); } else { Console.WriteLine("Vectors are not the same."); } vector2.Revert(); Console.WriteLine("Reverse vector2: " + vector2); vector2.MultiplyByScalar(3); Console.WriteLine("Vector2 * 3: " + vector2); Console.WriteLine($"Vector2[3] = {vector2.GetCoordinate(3)}"); if (vector1.Equals(vector2)) { Console.WriteLine("Vectors are the same."); } else { Console.WriteLine("Vectors are not the same."); } Console.WriteLine($"Vector1*Vector2 = {Vector.Multiply(vector1, vector2)}"); Console.WriteLine(); Console.WriteLine("Check static and dynamic. Second vector is longer."); vector1.MultiplyByScalar(2); Console.WriteLine("vector1: " + vector1); vector2 = new Vector(vector1.GetSize() + 2, coordinates); Console.WriteLine("vector2: " + vector2); Console.WriteLine($"Set {vector1.GetSize() + 1}-th coordinate equal to 10."); vector2.SetCoordinate(vector1.GetSize() + 1, 10); Console.WriteLine("vector2: " + vector2); Vector vector3 = new Vector(vector2); vector2.Add(vector1); Console.WriteLine("Dynamic: vector1 + vector2 = " + vector2); Console.WriteLine("Static: vector1 + vector2 = " + Vector.GetSum(vector3, vector1)); vector2.MultiplyByScalar(2); vector3 = new Vector(vector2); Console.WriteLine("vector2: " + vector2); Console.WriteLine("vector1: " + vector1); vector2.Subtract(vector1); Console.WriteLine("Dynamic: vector2 - vector1 = " + vector2); Console.WriteLine("Static: vector2 - vector1 = " + Vector.GetDifference(vector3, vector1)); Console.WriteLine(); Console.WriteLine("Check static and dynamic. Second vector is shorter."); Console.WriteLine("vector1: " + vector1); vector2 = new Vector(vector1.GetSize() - 1, coordinates); vector2.MultiplyByScalar(3); Console.WriteLine("vector2: " + vector2); vector3 = new Vector(vector2); vector3.Add(vector1); Console.WriteLine("Dynamic: vector1 + vector2 = " + vector3); Console.WriteLine("Static: vector1 + vector2 = " + Vector.GetSum(vector2, vector1)); vector2.MultiplyByScalar(2); vector3 = new Vector(vector2); Console.WriteLine("vector2: " + vector2); Console.WriteLine("vector1: " + vector1); vector2.Subtract(vector1); Console.WriteLine("Dynamic: vector2 - vector1 = " + vector2); Console.WriteLine("Static: vector2 - vector1 = " + Vector.GetDifference(vector3, vector1)); Console.ReadKey(); }
static void Main(string[] args) { double[] testArray = { 1, 2, 3 }; Console.WriteLine("Конструкторы:"); Console.WriteLine(); Vector vector1 = new Vector(5); Console.WriteLine("Конструктор по размеру: " + vector1); Vector vector2 = new Vector(vector1); Console.WriteLine("Конструктор копирования: " + vector2); Vector vector3 = new Vector(testArray); Console.WriteLine("Конструктор с массивом: " + vector3); Vector vector4 = new Vector(5, testArray); Console.WriteLine("Конструктор с массивом и размером 5: " + vector4); Console.WriteLine(); Console.WriteLine("Нестатические методы:"); Console.WriteLine(); Console.WriteLine("Размерность первого вектора: {0}", vector1); Vector vector5 = new Vector(vector3); Console.WriteLine("Сумма векторов {0} и {1} равна {2}", vector5, vector4, vector3.Add(vector4)); vector5 = new Vector(vector3); Console.WriteLine("Разность векторов {0} и {1} равна {2}", vector5, vector4, vector3.Subtract(vector4)); vector5 = new Vector(vector3); Console.WriteLine("Умножение вектора {0} на скаляр {1} равно {2}", vector5, 5, vector3.Multiply(5)); vector5 = new Vector(vector3); Console.WriteLine("Разворот вектора {0} равен {1}", vector5, vector3.Reverse()); Console.WriteLine("Длина вектора {0} равна {1:f2}", vector3, vector3.GetLength()); Console.WriteLine("X вектора {0} равен {1}", vector3, vector3.GetElement(0)); vector5 = new Vector(vector3); Console.WriteLine("Меняем X вектора {0} на {1}, сейчас вектор выглядит так: {2}", vector5, 25, vector3.SetElement(0, 25)); Console.WriteLine("Метод Equals для {0} и {1} возвращает: {2}", vector3, vector4, vector3.Equals(null)); Console.WriteLine("Хэш-кодом для вектора {0} является: {1}", vector3, vector3.GetHashCode()); Console.WriteLine(); Console.WriteLine("Статические методы:"); Console.WriteLine(); Console.WriteLine("Сумма векторов {0} и {1} равна {2}", vector3, vector4, Vector.Add(vector3, vector4)); Console.WriteLine("Разность векторов {0} и {1} равна {2}", vector3, vector4, Vector.Subtract(vector3, vector4)); Console.WriteLine("Скалярное произведение векторов {0} и {1} равно {2}", vector3, vector4, Vector.GetScalarProduct(vector3, vector4)); Console.ReadKey(); }
static void Main(string[] args) { Vector vector1 = new Vector(6); Vector vector2 = new Vector(vector1); Vector vector3 = new Vector(new double[] { 56.77, 7.5, 86.8, 6.7, 4.6, 66.8, 90.6, 12.4 }); Vector vector4 = new Vector(6, new double[] { 5.6, 7.7, 6.8 }); Console.Write("Сумма векторов {0} и {1} = ", vector3, vector4); vector3.AddVector(vector4); Console.WriteLine(vector3); Console.WriteLine(); Console.Write("Разность векторов {0} и {1} = ", vector3, vector4); vector3.SubtractVector(vector4); Console.WriteLine(vector3); Console.WriteLine(); int scalar = 10; Console.Write("Результат умножения вектора {0} на число {1} = ", vector4, scalar); vector4.MultiplyByScalar(scalar); Console.WriteLine(vector4); Console.WriteLine(); Console.Write("Результат разворота вектора {0} = ", vector3); vector3.RotateVector(); Console.WriteLine(vector3); Console.WriteLine(); Console.WriteLine("Длина вектора {0} = {1}", vector3, vector3.GetLength()); Console.WriteLine(); Console.WriteLine("Третья компонента вектора {0} = {1}", vector3, vector3.GetComponent(3)); Console.WriteLine(); vector3.SetComponent(3, 45.3); Console.WriteLine("Третья компонента вектора теперь равна {0} = {1}", vector3, vector3.GetComponent(3)); Console.WriteLine(); Console.WriteLine("Сумма векторов {0} и {1} = {2}", vector3, vector4, Vector.AddVectors(vector3, vector4)); Console.WriteLine(); Console.WriteLine("Разность векторов {0} и {1} = {2}", vector3, vector4, Vector.SubtractVectors(vector3, vector4)); Console.WriteLine(); Console.WriteLine("Произведение векторов {0} и {1} = {2}", vector3, vector4, Vector.MultiplyVectors(vector3, vector4)); Console.WriteLine(); if (vector1.Equals(vector2)) { Console.WriteLine("Векторы {0} и {1} равны", vector1, vector2); } else { Console.WriteLine("Векторы {0} и {1} не равны", vector1, vector2); } Console.WriteLine(); if (vector1.Equals(vector3)) { Console.WriteLine("Векторы {0} и {1} равны", vector1, vector3); } else { Console.WriteLine("Векторы {0} и {1} не равны", vector1, vector3); } try { Vector vector5 = new Vector(-2); } catch (ArgumentException) { Console.WriteLine("Размерность меньше 1. Вектор не создан."); } try { Vector vector6 = new Vector(-3, new double[] { 2.3 }); } catch (ArgumentException) { Console.WriteLine("Размерность меньше 1. Вектор не создан."); } try { Vector vector7 = new Vector(2); } catch (ArgumentException) { Console.WriteLine("Размерность меньше 1. Вектор не создан."); } Console.ReadKey(); }
static void Main() { double[] a = { 1.1, 2.1, 4, 7.5 }; Vector vector1 = new Vector(a); double[] b = { 3, 4, 5, 6, 7 }; Vector vector2 = new Vector(b); double[] c = { 1, 1, 1 }; Vector vector3 = new Vector(c); Console.WriteLine(new Vector(6)); Console.WriteLine(new Vector(vector2)); Console.WriteLine(new Vector(a)); Console.WriteLine(vector1); Console.WriteLine(new Vector(6, b)); Console.WriteLine("Размерность вектора vector2: {0}", vector2.GetSize()); vector1.SetElement(1, 10); Console.WriteLine("Значение вектора на 2 позиции: {0}", vector1.GetElement(1)); vector2.Add(vector1); Console.WriteLine("Суммирование к вектору vector2 вектора vector1: {0}", vector2); vector2.Substract(vector1); Console.WriteLine("Вычитание от вектора vector2 вектора vector1: {0}", vector2); vector2.MultiplyByScalar(3); Console.WriteLine("Умножение вектора vector2 на скаляр: {0}", vector2); vector2.Reverse(); Console.WriteLine("Обращение вектора vector2: {0}", vector2); Console.WriteLine("Длина вектора vector2: {0}", vector2.GetLength()); Console.WriteLine("Сравнение на равенство векторов vector1 и vector2: {0}", vector1.Equals(vector2)); Console.WriteLine("Хэш код вектора vector1: {0}", vector1.GetHashCode()); Console.WriteLine(vector1); Console.WriteLine(vector2); Console.WriteLine("Суммирование вектора vector2 и вектора vector1: {0}", Vector.GetSum(vector1, vector2)); Console.WriteLine("Вычитание вектора vector1 и вектора vector2: {0}", Vector.GetDifference(vector1, vector2)); Console.WriteLine("Умножение вектора vector2 и вектора vector1: {0}", Vector.GetScalarMultiplication(vector1, vector2)); Console.ReadLine(); }
static void Main(string[] args) { Vector zerowVector = new Vector(3); Console.WriteLine("zerowVector = " + zerowVector); Console.WriteLine(new string('-', 100)); double[] array = { 3, 3.75, 2, 44, -5, 54 }; Vector arrayVector = new Vector(array); Vector copyArrayVector = new Vector(arrayVector); Console.WriteLine("arrayVector = " + arrayVector); Console.WriteLine("copyArrayVector = " + copyArrayVector); Console.WriteLine(new string('-', 100)); Vector partialArrayVector = new Vector(8, array); Console.WriteLine("partialTestVector = " + partialArrayVector); Console.WriteLine("Размерность partialTesVector = " + partialArrayVector.GetSize()); Console.WriteLine(new string('-', 100)); Vector firstVector = new Vector(new double[] { 3, 3, 4, 4 }); Vector secondVector = new Vector(new double[] { 1, 3, 7, 8, 8, 8, 4 }); Console.WriteLine("Сумма векторов {0} и {1} равна:", firstVector, secondVector); firstVector.Sum(secondVector); Console.WriteLine(firstVector); Console.WriteLine(new string('-', 100)); Console.WriteLine("Разность векторов {0} и {1} равна:", firstVector, secondVector); firstVector.Subtract(secondVector); Console.WriteLine(firstVector); Console.WriteLine(new string('-', 100)); double scalar = 3; Console.WriteLine("Результат умножения вектора {0} на скаляр {1}: ", firstVector, scalar); firstVector.MultiplicationByNumber(scalar); Console.WriteLine(firstVector); Console.WriteLine(new string('-', 100)); Console.WriteLine("Вектор обратный вектору {0}:", firstVector); firstVector.Turn(); Console.WriteLine(firstVector); Console.WriteLine(new string('-', 100)); Console.WriteLine("Длина вектора {0} : {1:f2}", firstVector, firstVector.GetLength()); int componentIndex = 3; Console.WriteLine("Компонента вектора {0} по индексу {1} : {2}", firstVector, componentIndex, firstVector.GetComponent(componentIndex)); double newComponent = 55.6; firstVector.SetComponent(componentIndex, newComponent); Console.WriteLine("Компонента вектора {0} по индексу {1} : {2}", firstVector, componentIndex, firstVector.GetComponent(componentIndex)); Console.WriteLine(new string('-', 100)); if (firstVector.Equals(secondVector)) { Console.WriteLine("Вектор {0} равен вектору {1}", firstVector, secondVector); } else { Console.WriteLine("Вектор {0} не равен вектору {1}", firstVector, secondVector); } Console.WriteLine("hashCode вектора {0}: {1}", firstVector, firstVector.GetHashCode()); Console.WriteLine("hashCode вектора {0}: {1}", secondVector, secondVector.GetHashCode()); Console.WriteLine(new string('-', 100)); Console.WriteLine("Сумма векторов {0} и {1} равна: {2}", firstVector, secondVector, Vector.GetSum(firstVector, secondVector)); Console.WriteLine("Разность векторов {0} и {1} равна: {2}", Vector.GetSum(firstVector, secondVector), firstVector, Vector.GetResidual(Vector.GetSum(firstVector, secondVector), firstVector)); Console.WriteLine("Скалярное произведение векторов {0} и {1}: {2}", firstVector, secondVector, Vector.GetScalarMultiplication(firstVector, secondVector)); }