private Int32 Count <Type>(Type num, Int32 seed, Int32 modulo) where Type : struct { if (BooleanFunctions <Type, Int32, Boolean> .NotEquals(ArithmeticFunctionsExcellent <Type, Int32> .DivideTwo(num, modulo), 0)) { return(Count(ArithmeticFunctionsExcellent <Type, Int32> .DivideTwo(num, modulo), seed++, modulo)); } else { return(seed); } }
/// <summary> /// Перегрузка операции "не равно" /// </summary> /// <param name="left">Левый операнд</param> /// <param name="right">Правый операнд</param> /// <returns>Возращает true или false</returns> public static Boolean operator !=(BinarySystem <Type> left, BinarySystem <Type> right) => BooleanFunctions <Int32, Int32, Boolean> .NotEquals(Hash(left), Hash(right));