Перегрузка операторов - C# (181027)
Формулировка задачи:
Дошел до изучения перегрузки. Может решит кто-нибудь? Класс — одномерный массив. Дополнительно перегрузить следующую операцию != — проверка на неравенство массивов.
У меня есть такая же программа, но только со сложением массивов.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace peregruzka { class MyArr { // Координаты точки в трехмерном пространстве public int[] a; public MyArr(int[]a) { this.a = a; } public MyArr() { a = new int[5]; } // Перегружаем бинарный оператор + public static MyArr operator +(MyArr obj1, MyArr obj2) { MyArr arr = new MyArr(); for (int i=0;i<5; i++) { arr.a[i] = obj1.a[i] + obj2.a[i]; } return arr; } } class Program { static void Main(string[] args) { int[] a = new int[5]; int[] b = new int[5]; Random rnd = new Random(); for (int i = 0; i<5; i++) { a[i] = rnd.Next(1, 10); b[i] = rnd.Next(10, 20); } Console.Write("Массив B: "); for (int i = 0; i < 5; i++) { Console.Write( a[i] + " "); } Console.WriteLine(); Console.Write("Массив B: "); for (int i = 0; i < 5; i++) { Console.Write( b[i] + " "); } Console.WriteLine(); MyArr Point1 = new MyArr(a); MyArr Point2 = new MyArr(b); MyArr Point3 = Point1 + Point2; for (int i = 0; i < 5; i++) { Console.Write(Point3.a[i] + " "); } Console.ReadLine(); } } }
Решение задачи: «Перегрузка операторов»
textual
Листинг программы
var isEquals = true; for (var i = 0; i< arr1.Length; i++) isEqueals = isEquals && (arr1[i] == arr2[i])
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д