Если невозможно упорядочить векторы, вывести сообщение "Вектора несравнимы" - C#
Формулировка задачи:
даны булевы вектора а и b длины n. Если возможно упорядочить их, или вывести сообщение "Вектора несравнимы
Решение задачи: «Если невозможно упорядочить векторы, вывести сообщение "Вектора несравнимы"»
textual
Листинг программы
public static class report { [STAThread] public static void Main() { BitArray a = new BitArray(new bool[] {true, true, true, false}); BitArray b = new BitArray(new bool[] {true, true, true, true}); Console.WriteLine(a.CompareTo(b)); Console.WriteLine(b.CompareTo(a)); Console.ReadKey(); } /// <summary>Сравнивает два булевых массива</summary> /// <returns> /// 1, если массив a больше b /// 0, если массив а равен b /// -1, если массив а меньше b /// null, если массивы не сравнимы /// </returns> public static int? CompareTo(this BitArray a, BitArray b) { if (a.Length != b.Length) return null; bool aGreat = false; bool bGreat = false; for (int i = 0; i < a.Length; i++) { if (a[i] && !b[i]) aGreat = true; if (b[i] && !a[i]) bGreat = true; } if (aGreat && !bGreat) return 1; if (bGreat && !aGreat) return -1; if (!aGreat && !bGreat) return 0; return null; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д